在Unix操作系统中,我们会遇到很的问题。我们要有很扎实的Unix操作系统的知识才能够解决这些问题。这里的Unix操作系统家庭的小点滴,希望和大家分享。
1. Unix操作系统裁缝世家cut paste
(1),从一个文件中剪贴字段,字段之间按照特定的符号隔开(默认为空格)。cut –f2,3,5 –d:filea 将文件filea的第2,3,5个字段剪贴出来输出到屏幕,其中每个字段之间用:分开,如果不带-d则每个字段之间按空格分开。
(2),-c选项可以剪贴文件中的数据列。cut -c 1-15,20,22-30 filea 可以剪贴文件filea从第一列开始的第1-15个字符,第20个字符,和第22-30个字符,并输出。
(3),paste 可以将多个文件按列方式合并,与 cut相结合可以重组文件格式。
则分别将文件filea的第2和第5个字段,fileb的第4个和第3个字段,filec的第11,12,13个字段合成为一个新文件filed。(最好filea,fileb,filec具有相同的行,不然将会将行多的文件的行贴到最后,前面的照样匹配。
2. Unix操作系统偷梁换柱的高手tr.
trtranslate完成文件种批编辑的替换功能,用来将标准输入中的字符转换成标准输出中的其他制定字符:. tr A B filea fileb 将文件filea中的所有A全部替换成B然后输出到文件fileb
3. Unix操作系统tr 也支持范围替换:
tr “[a-z]” “[A-Z]” filea 将filea中的所有小写字母都替换成大写。
tr -s ‘[A-Z]' ‘[!*]' filea 将所有大写字符的连续出现替换成一个 ! 。
4.Unix操作系统可以利用tr 删除一个字符的连续出现:
tr –s ″ ″ filea fileb 则将filea中的连续出现的空格以一个空格替换然后输出到文件fileb。
5. Unix操作系统–d 选项可以删除指定的字符
-cd 选项可以删除列出的字符以外的所有字符:
- tr –d ″[a-z]″ filea fileb 将文件filea 中的所有小写字符全部删除然后输出到fileb.
- tr –cd ″[a-z]″ filea 将文件filea 中除小写字符a-z外的的内容全部删除。
6. Unix操作系统“find ,grep strings” 织成一张无边无际的网,几乎可以网住所有需要查找的目标,但也难免有漏网之鱼。
- find 在目录中查找文件: find / -name filea –print
- grep 在文本文件中搜索模式: grep aaaaa filea
- strings 在文本文件或二进制文件中找出可打印字符:strings filea
还有很多Unix操作系统小成员,象sed,awk,perl,expect等,等我们混熟了,再介绍给大家。
【编辑推荐】