指令 功能
screen
screen -S 子会话名称 创建新的子screen
screen -r 名称 进入某screen
screen -wipe 清除dead状态的会话
screen -ls 列出当前所有的session
ctrl+a+d 暂离当前screen
exit -r 进入会话后,键入exit退出并关闭当前screen实例
vim
:5,10 s/正则/替换值 从5到10行每行第一个正则匹配数据进行替换
:5,10 s/正则/替换值/g 从5到10行所有正则匹配数据进行替换
:% s/^/# 每行首添加#注释
vim -b filename 然后:%!xxd最后:%!xxd -r 编辑二进制文件
scp
scp 参数 本地文件 user@ip:路径 发送
-r 递归
-P 指定端口
-l limit 限定用户所能使用的带宽,单位 Kbit/s
grep
grep -r ‘app’ -with-filename / 递归查询根目录下所有文件中包含app字符串的,并打印文件路径
grep -C 5 ‘app’ file 显示匹配到app字符串的上下5行
grep -B 5 ‘app’ file 显示匹配到app字符串的上5行
grep -A 5 ‘app’ file 显示匹配到app字符串的下5行
split
split -b 1000 路径文件 以1000字节切割文件
-C 行最大字节数,切割时将尽量维持每行的完整性
-d 3 以三位的数字结尾
-l 10 限制文件最大行数为10
-n 10 等分成10个文件
more
+n 从笫n行开始显示
-n 定义屏幕大小为n行
+/pattern 在每个档案显示前搜寻pattern,然后从该字串前两行之后开始显示
n Enter 向下翻n行,默认为1,只用输一次,空格功能变为翻n行
:f 输出文件名和当前行的行号
v 调用vi编辑器
空格键(Space) 代表向下翻一页
b 向上翻一页,只对文件有效
find
find path option xxxx 在path下找文件
-maxdepth 2 限制查找深度为2层
-name xxx 以xxx为名查找文件
-user xxx 搜索属于xxx用户的文件或目录
-group xxx 搜于属组
-type 参数 f文件,d目录,l链接
-size 参数 1k(大于0小于1k),+(大于),-(小于)
-atime 参数 按最后访问时间,同上,单位/天
-mtime 参数 按文件最后修改时间
-ctime 参数 按文件最后改变时间
-amin、-mmin、-cmin 单位/分钟
-delete 将找到的文件删除
-print0 当文件有空格时,管道给到xargs会出错,需要用 find … -print0 | xargs -0 ls 来操作
xargs 接收标准输出转为命令的参数
-i 占位,ls | xargs docker-compose -f {} up
-n 一次性传几个参数给后面的命令,默认传所有
-P 开几个进程处理参数
-0 以null为分割符切割接收到的标准输入
sed
-i 修改文件内容,例在第1至4行插入文本xxx。sed -i ‘1,4i xxx’ my.log
df&du
df -h 显示已挂载的分区磁盘信息
du -sh dir 显示文件大小
uniq 注意需要重复行相邻才可以去重,所以一般先sort
-c 显示重复次数
-d 仅显示重复出现的行
-f 1 跳过第一列比较后面的
awk
-F ‘:’ ‘{if($1>10)print $0}’ 打印以冒号为分隔符并且第一列大于10的行
NF 每条记录列数
awk ‘{print $0,"——",$2NF)}’ 取倒数第二列
NR 第几行
awk ‘{if(NR>2)print $0,"——",$(NF-1)}’ path 取行数大于2倒数第二列
sort
-b 忽略行首空格字符
-d 忽略除英文、数字、空格外其他字符
-n 按数值大小排序
-r 倒序
-u 去除重复行
-t 参数 指定分隔符
-k 数字 指定按第几列进行排序
sort 文件1 -o 文件2 文件1排序输出到文件2
chown&chgrp&chmod
chown -R user dir 递归改变所有者
chgrp 改组
chmod 改权限
zip&unzip
zip -r test.zip ./test 打包test文件夹到test.zip
zip -x ./test/a -r test.zip ./test 打包test文件夹到test.zip,忽略test下a文件
zip -x ./test/b/ -r test.zip ./test 打包test文件夹到test.zip,忽略test下b文件夹
tar&gzip
tar -xzvf xxx.tar.gz 解包xxx文件
tar -czvf path/xxx.tar [单/多文件路径] 打包到dir路径
tzselect 时区提示命令,最后根据提示键入TZ='Asia/Shanghai’; export TZ,然后输入cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime覆盖文件,再hwclock写入bios
iptables 参考链接
ACCEPT 允许防火墙接收数据包
DROP 丢弃包
QUEUE 防火墙将数据包移交到用户空间
RETURN 防火墙停止执行当前链中的后续Rules,并返回到调用链(the calling chain)中
cut
-c 1-5 按字符截取,第1至5个,左闭右闭
lsof
lsof -i:port 查看占用端口的进程
lsof -p pid 查看进程打开的描述符
netstat
-nltp | grep pid 查找某进程占用的端口
man
1 一般命令,shell
2 系统调用
3 函数,涵盖[C标准函数库]
4 特殊文件(通常是/dev中的设备)和驱动程序
5 文件格式和约定
6 游戏和屏保
7 杂项
8 系统管理命令和守护进程

linux进阶工具文档