Linux常用命令
1 2 3 4 5 6 | find /usr /home /tmp -iname "*.jar" (1.多个目录 2.不区分大小写) find /usr/bin - type l -name "z*" - ls (1.类型 2.执行操作,- ls 同 - exec ls -l {} \; 还有-delete) find / -name "*.txt" - mount 只在本文件系统查找(- mount or -xdev ) find . -name "flick*.png" | xargs tar czf flick.rar find ~ -name ‘*.log’ -print0 | xargs -0 rm -f 太长的分段(-print0 与 -0 匹配,以NULL代替回车换行) find . - type f -atime +10 -print0 | xargs -0 -l1 -t rm -f (-l1 表示 一次处理一行,-t表示看到) |
Grep
1 2 3 4 5 6 7 8 9 10 11 | grep -c /-o/-n/-i/-l/-w/-v count /only-match/num/ignore/list-name/word/invert-match grep -B /A/C n (before /after/context )显示匹配行周围行 (posix 未说明) egrep --color 'cat|dog' test cat or dog grep -E --color 'cat|dog' test (同上一行) grep -l -e 'string\.h' -e 'stdlib\.h' /usr/include/ *.h #查看日志的错误信息 grep -i -w -r -E 'error|failed|failure' /var/log | less echo "--shit" | grep -- --shit echo '--shit' | grep -e '--shit' |
Rsync
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | rsync -e "ssh -p 31415" suse@mreald.com: /home/suse/extensions/ /srv/www/htdocs/extensions/ -avz (-p 表示端口, rsync 不会覆盖第二个内容 要是都有的话) 节点不够的情况下: rsync -r -u - v --delete-before -e 'ssh -p 31415' /home/uploader/logistics_system/ test @mreald.com: /share/www/vhosts/make_up/ 快速删除多级目录 mkdir blank rsync --delete-before -a -H - v --progress --stats blank/ aa/ 快速删除大文件 touch mreald.txt rsync --delete-before -a -H - v --progress --stats mreald.txt /aniya/usr . tar .gz 同步并删除原文件(不删除原空目录) rsync IP: /home/ *.jpg /share/www/ -avz --remove-sent-files 同名目录同步覆盖方法: 1. cp -rp dir1/* dir2/ 同名不覆盖不提示: yes no| cp -rp dir1/* dir2/ 同名覆盖不提示: \ cp -rp dir1/* dir2/ 2. rsync -avz dir1/ dir2/ or rsync -avz dir1/* dir2/ rsync -azv --partial --exclude "dir1" --exclude "dir2" --exclude "dir3" /source/ $HOST: /dest/ |
Screen (后端开启虚拟终端,退出后仍在后台)
1 2 3 4 | screen -S name (开启一个名为name 的后台) ^a + c/^a /n/p/0-9/d 常用快捷键 screen - ls (列出打开的虚拟后台 ) screen -r name |