编程开发学习笔记

  1. Git命令行

参考文献:

https://blog.csdn.net/chenxueshanBlog/article/details/78915338

 

git init

初始化文件夹,在文件夹中添加.git文件,以进行版本控制

git add index.html

将index.html添加到版本库中

git add .

add后面空格加点,表示将当前目录及子目录中的文件都添加到版本库里

git status

查询状态

git commit -m “Test use git to commit file”

提交本地修改,提交前要先进行git add 操作

git stash

暂时封存本地修改

git pull origin master

从远端下载最新版本

git stash pop

 

git reset

重置到上一个版本

git pull origin master

把远端最新版本更新到本地

git push

把本地最新版本推送到远端

git branch -d name

删除分支

git merge name

合并某分支到当前分支

git checkout -b name

创建+切换分支

git checkout name

切换分支

git branch name

创建分支

git branch

查看分支

git rm file

删除文件

git checkout -- file

撤销修改

 

 

提交更新的步骤:

Git add . => git commit -m ‘Add title’ => git push origin master

 

Git忽略规则和.gitignore不生效的解决方法

https://www.cnblogs.com/zhangxiaoliu/p/6008038.html

 

git rm -r –-cached .

git add .

git commit -m ‘update .gitignore’

 

    1. 把本地文件夹放入远程库

//初始化

git init

//增加所有文件到版本库

git add .

//提交本地修改

git commit -m ‘initial commit’

//创建密钥对

ssh-keygen -t rsa -C “youremail@example.com”

 

 

  1. Linux命令

ls

-l

-a

列出目录

-长格式列出

-显示所有文件,包括隐藏文件和目录(所有以“.”为开始的文件和目录为隐藏文件)

more

 

less

 

cat

 

pwd

查看所在路径位置

cd

/

./

../

进入某个目录

根目录

当前目录

上级目录

mkdir

创建目录

sudo

加在命令前面,获取管理员权限

rm

-r

 

-f

删除文件

-就是向下递归,不管有多少级目录,一并删除

-就是直接强行删除,不作任何提示的意思

Ctrl+A

光标回到行首

Ctrl+E

光标回到行尾

 

  1. 转换说明符

%a(%A)     浮点数、十六进制数字和p-(P-)记数法(C99)

%c         字符

%d        有符号十进制整数

%f         浮点数(包括float和doulbe) 

%e(%E)     浮点数指数输出[e-(E-)记数法]

%g(%G)     浮点数不显无意义的零"0"

%i         有符号十进制整数(与%d相同)

%u        无符号十进制整数

%o        八进制整数    e.g.     0123

%x(%X)     十六进制整数0f(0F)   e.g.   0x1234

%p        指针

%s        字符串

%%        "%"

  1. python2 和 python3切换

参考文献:https://www.cnblogs.com/shabbylee/p/6792555.html

 

运行python2

py -2 xxx.py

py -3 xxx.py

Pip安装

py -2 -m pip install xxx

py -3 -m pip install xxx

 

  1. XShell命令行操作

yum install -lrzsz

安装

ls

查询

rz

上传

sz fomokiller_n.zip

下载

zip -r -q -o fomokiller_n.zip ./fomokiller_n

压缩

unzip fomokiller_n.zip

解压缩

rm -rf fomokiller_n

删除

pm2 reload

pm2 reload homepage

重启服务

pm2 list

查询服务

pm2 log

日志

npm install

 

f disk -l

查看数据盘信息

df -h

查看系统盘空间

ssh root@120.26.235.4

ssh登录服务器

su root

切换账号到root

 

 

 

 

 

 

 

 

 

 

 

 

  1. Linux服务器部署
    1. 增加新用户,配置密钥登录

//增加用户

adduser imooc_manager

//把imooc_manager添加到sudo组

gpasswd -a imooc_manager sudo

//把imooc_manager设置成root相同的权限

sudo visudo

//用imooc_manager抄写root规则

 

//生成密钥对

ssh-keygen -t rsa -b 4096 -C orca123456@163.com

 

//在服务端创建.ssh文件夹下创建authorized_keys文件

vi authorized_keys

//然后把公钥复制到该文件中

//修改文件权限

chmod 600 authorized_keys

//重启服务

sudo service ssh restart

 

    1. 搭建Nodejs环境

//更新系统

sudo apt-get update

//安装相关模块或包

sudo apt-get install vim openssl build-essential libssl-dev wget curl git

//安装nvm

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

//关闭并重新打开一个终端

//安装node

nvm install v6.9.5

//指定版本号

nvm use v6.9.5

//设置默认版本

nvm alias default v6.9.5

//制定通过国内淘宝镜像下载

npm --registry=https://registry.npm.taobao.org install -g npm

//增加文件监控数目

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

//安装cnpm

npm --registry=https://registry.npm.taobao.org install -g cnpm

(//找不到模块时通过npm同步到国内镜像)

cnpm sync koa

//安装相关工具

npm i pm2 webpack gulp grunt-cli -g

    1. 修改登录端口

//配置文件

sudo vi /etc/ssh/sshd_config

//重启服务

sudo service ssh restart

//登录新的端口

ssh -p 39999 imooc_manager@120.26.235.4

    1. 关闭root和密码登录

//打开配置文件

sudo vi /etc/ssh/sshd_config

//修改配置文件

//重启服务

sudo service ssh restart

    1. 配置iptables

//Ubuntu升级更新

sudo apt-get update && sudo apt-get upgrade

//清空当前规则

sudo iptables -F

//新建配置文件

sudo vi /etc/iptables.up.rules

*filter

 

# allow all connections

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

 

# allow out traffic

-A OUTPUT -j ACCEPT

 

# all http https

-A INPUT -p tcp --dport 443 -j ACCEPT

-A INPUT -p tcp --dport 80 -j ACCEPT

 

# all ssh port login

-A INPUT -p tcp -m state --state NEW --dport 39999 -j ACCEPT

 

# ping

-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

 

# log denied calls

-A INPUT -m limit --limit 5/min -j LOG --log-prefix “iptables denied:” --log-level 7

 

# drop incoming sensitive connections

-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set

-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP

 

# reject all other inbound

-A INPUT -j REJECT

-A FORWARD -j REJECT

 

COMMIT

 

//设置iptables路径

sudo iptables-restore < /etc/iptables.up.rules

//查看防火墙是否启动

sudo ufw status

//激活防火墙

sudo ufw enable

//设置防火墙开机启动

sudo vi /etc/network/if-up.d/iptables

#!/bin/sh

iptables-restore /etc/iptables.up.rules

//修改脚本权限

sudo chmod +x /etc/network/if-up.d/iptables

    1. 安装fail2ban

//安装

sudo apt-get install fail2ban

//配置

sudo vi /etc/fail2ban/jail.config

//查看状态

sudo service fail2ban status

//关停

sudo service fail2ban stop

//开启

sudo service fail2ban start

 

 

 

 

 

 

 

  1. Vim操作说明

i

进入输入模式

:

进入底边命令模式

w

保存更改

q

退出

:q!

若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。

:w!

若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟你对该档案的档案权限有关啊!

Esc

回到一般模式

/word

向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)

?word

向光标之上寻找一个字符串名称为 word 的字符串。

n

这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!

N

这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值