| 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 |
系统管理命令和守护进程 |