shell函数:cut

来源:互联网 发布:omtp转ctia软件 编辑:程序博客网 时间:2024/06/11 18:30

有些内容是之前自己在网上浏览所积累的,具体出处找不到了。若是和他人有雷同之处,请及时指出。

cut [options] [file]
-d 后结分隔符,默认tab或空格
-b 按字节切分
-c 按字符切分
-f 按域切分,常与d连用

$ echo $PATH/usr/local/bin:/usr/bin:/cygdrive/c/ProgramData/Oracle/Java/javapath:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0:/cygdrive/d/Program Files/Python/Scripts:/cygdrive/d/Program Files/Python:%USERPROFILE%/AppData/Local/Microsoft/WindowsApps

提取第1个路径

$ echo $PATH | cut -d ":" -f 1/usr/local/bin

提取第1个和第3个路径

$ echo $PATH | cut -d ":" -f 1,3/usr/local/bin:/cygdrive/c/ProgramData/Oracle/Java/javapath

提取第2个至第5个路径

$ echo $PATH | cut -d ":" -f 2-5/usr/bin:/cygdrive/c/ProgramData/Oracle/Java/javapath:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS

提取第2个至第5个路径和第12个路径

$ echo $PATH | cut -d ":" -f 2-5,12/usr/bin:/cygdrive/c/ProgramData/Oracle/Java/javapath:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS

提取第8个及以后所有路径

$ echo $PATH | cut -d ":" -f 8-/cygdrive/d/Program Files/Python/Scripts:/cygdrive/d/Program Files/Python:%USERPROFILE%/AppData/Local/Microsoft/WindowsApps

提取第1个至第9个路径

$ echo $PATH | cut -d ":" -f -9/usr/local/bin:/usr/bin:/cygdrive/c/ProgramData/Oracle/Java/javapath:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0:/cygdrive/d/Program Files/Python/Scripts:/cygdrive/d/Program Files/Python

小技巧

去除文件的第一列,推荐使用

cut -f1 --complement file > file.mod

使用 awk ‘{$1=NULL}’ file或

awk ‘{$1=”“}’ file有时会出错