Shell 指令

  • awk

awk取自三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的姓名首字符,是一种处理文本文件的语言。

cat file.txt
1,5,6
2,5,6 
3,7,8

awk -F ',' '$1==2 && $2==5 {print $NF}' file.txt
6

-F:分隔符。

其中的$1..$n表示第几例。注:$0表示整个行。

单引号中的被大括号括着的就是awk的语句,注意,其只能被单引号包含。

  • sed

sed全称是stream editor,即流处理编辑器,利用脚本来处理文本文件。我主要使用的是其全文替换的功能。

cat file.txt
HELLO LINUX!  
Linux is a free unix-type opterating system.  
This is a linux testfile!  
Linux test


sed 's/Linux/world/g' file.txt
HELLO LINUX!  
world is a free unix-type opterating system.  
This is a linux testfile!  
world test

sed并不会修改原文件,如果需要保存修改结果可以重定向到文件中。

  • iconv

iconv命令将给定文件把它的内容从一种编码转换成另一种编码。

iconv [-f encoding] [-t encoding] inputfile -o outpufile

 

上一篇:php – 将Unicode字符转换为等效的ASCII字符


下一篇:php – UTF8到CP1255的转换