1. 显示所有可见字符
(1) cat 显示不可见字符
cat -A a.txt
(2)vim ,vi 显示不可见字符
set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<
#显示可见字符
set list
#取消显示不可见字符
set nolist
2. shell命令过长的处理方法
在每行的结尾添加 \ ; 注意 \所在行后面不能有其他任意字符。
3. 文本中查找字符:
cat a.txt | grep 'a'
4. 找出某个目录下文件大小最大的10个文件
find ./ -type f -print0 | xargs -0 du -h | sort -rh | head -n 10
find ./ -type f -exec du -Sh {} + | sort -rh | head -n 10
find ./ -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
5. 替换文本中的某些内容
6. 查找某个进程的进程id
7. 删除超过10天的文件
find ./deploy/ -type f -mtime +10 -exec rm -f {} \;
8. 判断文件或者文件夹是否存在的shell写法
9. 判断字符串是否相等的shell写法
10. shell脚本中的循环语句写法
11. 统计某个文件夹下某后缀文件的总大小。
du -sch $(find ./ -name '*.MYI')
12. 打印回车到文件
printf "hello\nworld\n"
13. 文件中替换字符串
vim 替换字符串方法:参照:https://www.cnblogs.com/tovep/articles/2715803.html
:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1
14. 僵尸进程:
杀死僵尸进程
ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' | awk '{print $2}' | xargs kill -9
查找僵尸进程
ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]'
15. 查找mysql的所有进程:
ps -ef | grep mysql | grep -v grep | awk '{print $2}'
16. 查看文件详细信息: stat {file name}
17. 按照时间排序某个文件夹下的文件:
按照修改时间来升序排列: ll -lt --full-time
按照修改时间来降序排列: ll -lrt --full-time
18. 根据进程id查找工作目录:
方法1: ps -ef | grep {查找的程序名} 找到主程序pid; ll /proc/{主程序pid}
方法2: ps -ef | grep {查找的程序名} 找到主程序pid; pwdx {主程序pid}
19. vim 设置tab为4个空格:
分别在文件 /etc/virc, /etc/vimrc的末尾添加: set tabstop=4
未完待续!