1.ps axo user,ruser,group,rgroup,cmd
// ruser 表示程序发起的用户,一般是指系统当前的用户
// user 表示程序的所有者。
在大数情况下,两个用户都是系统当前的用户, 之后当程序被赋予suid的时候,可能user会发生变化。
2. tr命令:
tr -d // 删除
-c // 取补集 指定谁的补集, 并且一定要写用哪个字符来替换它。
-s // 将重复的整合为一个
tr -c [[:alpha:]] "\n" 将所有的非字母都转化为\n换行符。
tr -cs [[:alpha:]] "\n" 将所有的非字母都转化为\n换行符, 并将重复\n换行符提取为1个。
3. 文本处理的三剑客:
grep : 过滤文本的
awk : 文本报告生成器 Linux上的实现gawk,文本报告生成器。
sed : 编辑文本的 e edit
这三种工具都支持正则表达式.
4. grep 分为3中 grep egrep fgrep
fgrep 不支持正则表达式, 平时简单过滤文件可以使用这个命令, 这个命令的执行效率远快于grep,egrep.
grep支持正则表达式
fgrep支持扩展的正则表达式
5. cat -A 文件名 // 除了要显示文本内容,还要显示一些隐藏符,如TAB符、换行符、等等。
-b // 不管空行
-n // 所有行
-ns // 将重复的空行转化为一行
6. tac 文件名 最后一行变成第一行,第一行变成最后一行
rev 文件名 一行中从右向左输出
7. logger “….” // 可用来生成/var/log/messages
8. tail -n0 -f /var/log/messages &, 释放窗口, 并且可以观察窗口的动态值, 但是产生的日志会显示到屏幕上, 这样是不利于命令的书写, 但是它也不影响命令的书写。
9. jobs 查看后台程序
fg 后台的进程号 将后台的程序调到前台
10. 操作系统man帮助其实调用的就是less命令。
11. less 和 man帮助。
可通过/或则是?来查询关键单词。
/从上到下的查找
?从下到上的查找
n 表示正向查找 N 表示逆向查找
12. head -10 || head -n 10 …显示头10行文件
13.cut -c 数字或则数字段 // 表示取那个字段或者是那几个字段
14. paste 文件1 文件2
将文件1和文件2中的内容同行的放到一起。 并没有改变文件1和文件2的内容。 只是得到一个输出结果。
15. 文本数据统计: wc
wc -l 统计行数
wc -m 统计字符
wc -c 统计字节格式
16. sort 整理文本 排序
-r 执行反方向(由上至下)整理
-n 执行按数字大小整理, 如果不按数字大小, 就会按ancii码去排序。以一个字符比较,而不是整体比较。
-f 选择忽略字符串中的字符的大小写
-u 选项(独特,unique)删除输出中重复行
-t c 选项使用c做为字段界定符
-k X 选项按照使用c字符分割的X列来整理能够使用多次
sort -t: -k 3 -n /etc/passwd
sort -t: -k 3 -n -r /etc/passwd
17. 提取一篇文档中的单词:
18. diff 余 patch工具结合使用, 可以差异性的别分数据
diff用来查看两个文件的不同点
patch可以用来将将一个文件同步到另外一个文件上。
diff 文件1 文件2 // 比较两个文件, 如果相同就没有提示, 只比较文件内容, 而与文件名无关。
//如果两个文件有差异, 可将差异部分提取出来。去同步一个文件。
diff -u f1 f11 > diff.log // 可将两个文件的差异部分提取出来
patch -b f1 diff.log // 根据diff.log来同步f1文件
patch -b f11 diff.log // 更加diff.log来同步f22内容
-b 选项 会保留原文件的内容, 并保存为 xxx.org
patch 命令可以往文件中添加内容也可以将文件内容减少内容。
19. uniq: 从输入中删除重复的前后相接的行
uniq
-c 显示每行重复出现额次数
-d 仅显示重复过的行
-u 仅显示不曾重复的行
cat /etc/rc.d/init.d/postfix | tr -sc "[[:alpha:]]" "\n" | tr -d "[" | tr -d "]" | tr -s "\n" | uniq -c
// 提取出单词, 并计算出每个单词出现的次数
20. [[:lower:]] [[:punct:]] 这些文档可以在man tr 中查询。
21.netstat -tn // 可用来查询当前哪个用户正在登陆。
22. \别名 和 "别名" 可以取消别名的效果。
23.grep -q …, 它不会输出任何结果,其实这个命令等同于 grep .. > /dev/null, 效果是一样的。即使匹配到内容了, 也不输出任何内容, 这在写脚本中就显得非常重要。
同样要和 echo $? 搭配使用
24. grep -A3 'root' /etc/passwd // 用来显示匹配到行的后3行
grep -B3 'root' /etc/passwd // 用来显示匹配到行的前3行
grep -C3 'root' /etc/passwd //用来显示匹配到行的前3行和后3行
25. grep -e -e选项表示或
例如: grep -e "ba*c" -e "da*f" aa
只要匹配到两个条件的任意一个就OK了。
egrep | | 这个符号也可以表示或的意思
grep -E "ba*c|da*f" aa
两者的效果是一样的。
26. grep -w "root" 用来匹配整个单词。
grep "\broot\b" …
grep "\" …
两者的效果是一样的。
字母两边是标点符号也是可以匹配到的, 担当字母两边出现数字就匹配不到了。在英语习惯中, 如果字符串的两边可以是标点符号。
27. man 7 regex // 可以用来查看regular expressions(正则表达式)值。
了
29. 通配符[a-c] aAbBc, 尽量不要使用[a-z]这种符号,可以使用[[:alpha:]]
30. [[:space:]] 空格键 和 tab 键都包含。
31. .* 正则 任意长度任意字符
32. 在正则表达式中 \ 不表示转译, 只是正则表达式的一部分。
在扩展正则表达式中, \ 表示转译。
33. \{m,n\} m表示至少m次, 至多n次, 是个闭区间。
34. grep 本质是行匹配, 只要这一行有被匹配的话,那么这一行就会被输出。
35. w命令可以查看当前系统登陆的用户, last命令可以用来查看之前系统登陆的记录。
原创文章,作者:458813466,如若转载,请注明出处:http://www.178linux.com/27533