Linux中重定向输出的学习

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  以上的两种写法是一致的

  -A数字 after 在A之后的数字行的内容

  -B数字 before 在B之前的数字行的内容

  —————————————

  cut命令 按照制定的内容将内容进行切割,相当于split()函数

  -d (delimiter) 制定分割的分隔符 默认的是Tab e.g. cut -d: #以:进行切割

  -f 制定要打印的列 cut -d: -f 1

  -c 按照字符进行切割 echo “weuhi-qiege-sdfijo”|cut -c 7-11 #切割qiege

  —————————————-

  sort命令 对内容进行排序

  如果直接用sort命令而不制定按照的内容的格式进行排序,那么默认按照的方式是字符的字典顺序

  -n 开关,对内容进行排序,排序格式按照的内容是数字 默认是升序

  -r (reverse)降顺

  -t c使用c作为字段分隔符

  -k x对字段x排序 sort -t: -k 3 按照:进行分割后按照第三列进行分割

  —————————————–

  uniq命令

  将相邻的两行相同的内容进行移除

  -c 用来统计重复的个数

  cat num.txt | sort |uniq -c 用于统计文本中出现的内容

  —————————————–

  文本分析工具

  wc 对文本进行计数

  -l 行数统计

  -w 单词数统计

  -c 字节统计

  -m 字符统计(不显示)

  —————————————–

  文本分析 对比文件

  diff 对文本进行对比分析 输出保存到一个文件中,称呼其为“补丁文件”

  使用时使用 -u作为“统一”格式的diff 适用于补丁文件,便于以后用patch命令进行打补丁

  diff filename1 filename2

  出现结果就是两者文件的不同 显示的是两个文件中的不同

  filename1为左文件 < 原文件

  filename2为右文件 > 新文件

  —————————————–

  patch 对文件进行大补丁

  复制所作的改变到其他文件中,使用-b自动备份要改变的文件

  diff -u foo.conf-broken foo.conf-works >foo.patch

  patch -b foo.conf-broken

  —————————————-

  tr traslate 翻译转换

  —————————————-

  命令sed(stream editor)全文替换

  但是其编辑的内容只是流的编辑,当然可以替换的内容重定向到文件

  sed ‘s/search/replace/’将要找的内容(search)换成要替换成的内容(replace)

  其中/是定界符 还可以是@ #等

  g 全局开关,使得如果一行中出现多个要被替换的内容时可以全部被替换

  i 忽略大小写

  d 删除

  命令前添加 m,n表示对[m,n]行区间的内容执行sed ‘87,93s/search/replace/’命令

  m=87 n=93

  sed ‘/cat/,/dog/s/search/replace’

  遇到cat直到dog的内容被替换掉 [cat,dog]

  —————————————–

  sed -e ‘表达式1’ -e ‘表达式2’ -e ‘表达式3’

  -e开关用法 用一次sed可以执行多个表达式

  -f开关用法 将命令的表达式写到文件中,然后用sed -f myrule.txt来执行

[1][2]

累死累活不说,走马观花反而少了真实体验,

Linux中重定向输出的学习

相关文章:

你感兴趣的文章:

标签云: