Linux命令
查看linux系统信息
cat /etc/redhat-release
VIM
Vim查找定位(命令模式下)
双击选中当前关键字
三击选中整行
从上向下查找关键字:/+关键字
从下向上查找关键字:?+关键字
(例如查找super单词,/super或者?super分别表示从上到下/从下到上查找super,如果文本中有多个super,那么可以使用n/shift+n,查找下一个/上一个匹配项)
跳到指定行:数字+gg/G/直接回车
(例如跳到25行,直接输入25+gg或者25+G,或者25+回车跳到指定行)
直接跳到vim顶部:gg
直接跳到vim底部:G
跳到行尾并编辑:A
跳到行尾不编辑:$
跳到行首不编辑:0
上/下翻半页:control + u/d
上/下翻整页:control + b/f
h/j/k/l:分别表示光标向左/下/右/上移动
编辑模式
文档中关键字的个数统计 ‘:%s/hel//gn’ 显示字符串’hel’在当前文件中出现的次数
Vim文本替换
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky,n为数字若n为'.'表示从当前行开始到最后一行
*可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符*
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
软连接
创建: ln -s [源文件或目录] [目标文件或目录]
例如:当前路径创建test 引向/var/www/test 文件夹
ln –s /var/www/test test
创建/var/test 引向/var/www/test 文件夹
ln –s /var/www/test /var/test
删除: rm –rf 软链接名称
和删除普通的文件是一眼的,删除都是使用rm来进行操作(请注意不要在后面加”/”,不加/是删除软连接,加了/会删除掉源文件下的内容)
例如:删除test软连接
rm –rf test
rm -rf test/ (会删除掉源文件下的内容,不要用这种方式)
修改: ln –snf [新的源文件或目录] [目标文件或目录]
这将会修改原有的链接地址为新的地址
例如:创建一个软链接
ln –s /var/www/test /var/test
修改指向的新路径
ln –snf /var/www/test1 /var/test
Curl
## 指定内容为json,http方式为post,传入数据'{"user": "admin", "passwd":"12345678"}' 到指定url
curl -H "Content-Type:application/json" -X POST -d '{"user": "admin", "passwd":"12345678"}' http://127.0.0.1:8000/login
-d : http post方式传递数据
-v : 显示本次http访问的request和response信息,包含header
-G : 以get方式来发送数据
-H/--header : 自定义头信息传递给服务器,添加httpheader
-T : 上传文件
--user-agent : 模拟用户request设备信息,可以模拟不同设备和浏览器来访问
-X : 指定是什么命令
-u : 设置访问服务器的用户名和密码
## 用户名=bob,密码=12345
curl -u 'bob:12345' https://google.com/login
## 只有用户名=bob
curl -u 'bob' https://google.com/login
Stress
linux下的压力测试命令
stress --cpu 1 --timeout 600
解压压缩
linux下的常见压缩有5种: zip, tar.gz, tar.bz2, tar.xz, tar.Z
.zip
#压缩filename.zip
#当前目录下的project下所有文件为project.zip
zip -r project.zip ./project
# filename.zip解压
# 解压到当前目录
unzip filename.zip
# 解压filename到指定目录temp
unzip -d /temp filename.zip
.gz
# filename.gz解压
gzip filename.gz -d
# d: 解压到当前位置
.tar.gz
##压缩tar.gz
tar -zcvf 压缩包名.tar.gz 源文件
-z :解压缩类型为 .tar.gz
-c :打包 (建立压缩档案)
-v :显示过程
-f :指定打包后的文件名
#filename.tar.gz解压
tar -zxvf filename.tar.gz
# z: gzip 压缩格式
# x: extract 解压
# v: verbose 详细信息
# f: file(file=archieve) 文件
.tar.bz2
#filename.tar.bz2的解压
tar -jxvf filename.tar.bz2
# j: bzip2 压缩格式
.tar.xz 和 tar.Z
#filename.tar.xz的解压
tar -Jxvf filename.tar.xz
# J: 压缩格式
#filename.tar.Z的解压
tar -Zxvf filename.tar.xz
# Z: 压缩格式
从1.15版本开始tar命令就可以自动识别压缩格式,不需要在人为区分压缩格式就可以正确解压
tar -xvf filename.tar.bz2
tar -xvf filename.tar.xz
tar -xvf filename.tar.Z
重置path
当设置环境变量path出现语法错误导致命令不能使用的时候
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
查看磁盘使用情况
#查看所有盘符信息
df -h
#查看当前目录下一级目录的磁盘占用情况
du -h --max-depth=1 ./
#查看文件夹所属于那个盘符
df ‘folder_name/path'
#查看当前目录下所有文件和目录大小信息,并且按照时间升序排列
ls -lht
查看IP
#Centos操作系统
ip addr
#ubuntu操作系统
ifconfig
查看端口进程
netstat
netstat -lnp|grep 80
scp
# 复制src文件到dest位置
scp src dest
#复制远程文件到本地destination位置
scp $remote_user@$remote_host:$remote_path destination
#复制本地文件src到远程path
scp src $remote_user@$remote_host:$remote_path
#复制101.6机器上的~/vmware_clone/centos7/vsphersclone.json到当前目录
scp ubuntu@192.168.101.6:~/vmware_clone/centos7/vsphersclone.json ./
#复制本地文件1.txt到远程目录~/vmware_clone/centos7下
scp 1.txt ubuntu@192.168.101.6:~/vmware_clone/centos7
查找文件/目录
find
#在根目录下查找路径中包含{name}字样的所有文件/目录
find / -path '*{name}*'
#找到/tmp目录下近20天的数据并且删掉
find /tmp -mtime +21 -name "*.*" -exec rm -Rf {} \;