一、首先说一下什么是cut和cut的用法
cut命令的主要作用是根据定界符对文本中的每行进行切割和提取。一般用来截取某行或某些行的一部分,切割嘛^^
先介绍一下cut命令的主要参数
-b:指定字节位置
-c:指定字符位置
-d:指定以什么字符作为定界符(字段分隔符),默认是制表符,特殊字符要用引号引起来,例如空格。
-f:指被定界符隔开的字段,例如f1就表示第一字段,f1,3就表示第1和第3字段
-s:忽略不包含定界符的行,要和-f一起使用
下面举例说一下用法:
1、显示/etc/passwd文件中以冒号为定界符的第一段和第三段
cut -f1,3 -d: /etc/passwd
2、显示/etc/passwd文件中的第5到8个字节是什么
cut –b5-8 /etc/passwd
3、显示/etc/passwd文件中第10个字符是什么
cut –c10 /etc/passwd
4、显示/etc/passwd文件以冒号为定界符的第一段,如果某行没有定界符,则忽略该行
cut –d: -f1 –s /etc/passwd
关于cut命令就说到这里,希望对大家有帮助,下面说一下sed命令
二、什么是sed和sed的用法
sed也是一个针对每一行进行处理的命令,他可以对每一行符合条件的内容进行替换,删除,插入,也可以在行之间插入,替换内容。支持正则表达式。
常用参数
-n:静默模式,只显示经过sed处理的行
-f:可以从文件中取出sed 的命令进行执行
-r:使sed支持扩展正则表达式
-i:直接修改原文件,而不是在屏幕上输出,默认将结果输出到屏幕
常用的命令
a:新增
c:取代
d:删除
i:插入
p:列印
s:查找替换
s/查找什么/替换为什么/ :默认只替换每行中第一次被匹配到的字符串
可在最后加修饰符
g :全局替换
i :忽略字符大小写
s功能里的/这个分隔符也可以换成#或者@都行,但要保持分隔符一致
& :代表引用前面查找的完整字段,例如s/user/&s/就表示把所有的user替换成users
下面举例说明一下
1、只显示passwd文件的第一行
sed -n ‘1p’ passwd
2、删除passwd文件的第2行到最后一行
sed ‘2,$d’ passwd
3、在passwd文件的第一行后面增加一行,内容为hello
sed ‘1a hello’ passwd
4、将passwd文件的最后一行改成hello($符号表示最后)
sed ‘$c hello’ passwd
5、将passwd文件中r..t改变成r..ts
sed 's#\(r..t\)#\1r#g' passwd或 sed 's#r..t#&r#g' passwd
以上就是sed的基本用法,主要是给自己做个知识的记录,也希望大家能看明白
转载于:https://blog.51cto.com/zhchicb/1216679