(1)常用范例
例一:利用 Linux 系统自带的字典查找一个五个字母的单词,第三个字母为 j,最后一个字母为 r ,/usr/share/dict 目录下存放字典文件,可以使用如下命令:
grep '^..j.r$' linux.words
例二:验证固定电话,打印符合条件的电话,固定电话格式基本都是带有 0 的区号+连接符“-”+电话号码,另外还有可能有分机号,区号有 3 位、4 位,电话号码有 7 位和 8 位的,可以使用如下命令:
grep "^0[0-9]{2,3}-[0-9]{7,8}(-[0-9]{3,4})?$" telphone.txt
区号:前面一个 0,后面跟 2-3 位数字 : 0[0-9]{2,3}
电话号码:7-8 位数字: [0-9]{7,8}
分机号:一般都是 3-4 位数字: [0-9]{3,4}
13. cut 命令
??cut 命令是一个将文本按列进行切分的小工具,它可以指定分隔每列的定界符。
??
(1)命令格式
cut [参数] [文件名]
(2)常用参数
参数描述
-b以字节为单位进行分割
-c以字符为单位进行分割
-d自定义分隔符,默认为制表符
-f自定义字段
--complement抽取整个文本行,除了那些由 -c 或 -f 参数指定的文本
(3)常用范例
例一:取出 student.txt 文件中的第一列和第三列,可以使用如下命令:
cut -f 1,3 -d ' ' student.txt
例二:取出 student.txt 文件中的第一列,可以使用如下命令:
cut -f 1 -d ' ' student.txt
例三:取出 student.txt 文件中的前三列,可以使用如下命令:
cut -f 1-3 -d ' ' student.txt
例四:取出 student.txt 文件中除第一列的其他列,可以使用如下命令:
cut -f 1 -d ' ' student.txt --complement
例五:给任意一字符串 str,取出其最后一个字符,可以使用如下命令:
num=$(echo -n $str | wc -c)
echo -n $str | cut -b $num??
或者
echo -n $str | cut -b `echo -n $str | wc -c`
14 paste 命令
paste 命令的功能正好与 cut 相反。它会添加一个或多个文本列到文件中,而不是从文件中抽取文本列。它通过读取多个文件,然后把每个文件中的字段整合成单个文本流,输入到标准输出。
(1)命令格式
paste [参数] [文件名]
(2)常用参数
参数描述
-s将每个文件合并成行而不是按行粘贴
-d自定义分隔符,默认为制表符
(3)常用范例
例一:将 student.txt 和 telphone.txt 文件中的内容按列拼接,可以使用如下命令:
paste student.txt telphone.txt
例二:将 student.txt 和 telphone.txt 文件中的内容按列拼接,指定分隔符为’:’,可以使用如下命令:
paste student.txt telphone.txt -d ':'
例三:将 student.txt 和 telphone.txt 文件中的内容各自拼接成一行,可以使用如下命令:
paste -s student.txt telphone.txt
15 tr 命令
tr 命令常被用来更改字符。我们可以把它看作是一种基于字符的查找和替换操作。换字是一种把字符从一个字母转换为另一个字母的过程。tr 从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-69506-4.html
剩我买块电池么
看上去听上去是有道理