-
基础正则表达式元字符表
查看全部 -
sort查看全部
-
匹配的例子
查看全部 -
正则表达式“*”
查看全部 -
基础正则表达式
查看全部 -
正则表达式,用于匹配符合条件的字符串,属于包含匹配,使用 GREP,AWK,SED命令来支持;
通配符,用于匹配符合条件的文件名,属于完全匹配,由于LS,FIND,CP不支持正则表达式,所以只能使用shell自身的通配符来实现
查看全部 -
1、
临时删除第二行的内容
sed '2d' test.txt
临时删除第二行到第四行的内容
sed '2,4d' test.txt
2、
-a(追加)在指定行的后面追加
sed '2a fhvnwiv' test.txt
-i(插入)在指定行的前面插入
sed '2i adfhfiqe' test.txt
3、
-c(行替换)
sed '2c wenfvjwiv' test.txt
-s(字符串替换)
sed 's/旧字符串/新字符串/g' 文件名
g代表是否把一整行的旧字符串改为新字符串,加了代表全改,不加就改第一个
sed '2s/13/14/g' test.txt
同时修改字符串,可以执行多条动作
sed -e '2s/13/14/g;2s/14/15/g' test.txt
查看全部 -
例子;查看文件第二行
$ sed -n '2p' test.txt
查看全部 -
sed [选项] '[动作]' 文件名
选项:
-n:把进过sed处理的行输出到屏幕上,没加全部输出
-e:加了可以执行多条命令
-i:没加,执行临时修改,加了永久修改文件
动作:
-a:追加,在当前行后添加一行或多行
-c:行替换,用c后面的字符串替换原数据行
-i:插入,在当前行插入一行或多行。
-d:删除,删除指定的行
-p:打印,输出指定的行
-s:字符串替换,用一个字符串替换另外一个字符串。
格式为“行范围s/旧字符串/新字符串/g”
查看全部 -
grep -v:显示不包含匹配文本的所有行。反向查找
cat test.txt | grep -v "name" | awk '$3>1{print $2}'
查看全部 -
FS内置变量:作用是指定分割符是什么
例子:
cat /etc/passwd | grep '/bin/bash' | awk 'BEGIN{FS=":"}{print $1 "\t" $3}'
BEGIN作用是在执行读取内容放到$1这些变量之前就执行的条件
如果没有这个条件的话,第一行可能没有执行你的查询条件,因为他已经读取内容放进$1这些变量里了
查看全部 -
为什么使用awk不是呀cut因为有一些字符串不一定以一些规律的分隔符分割所以我们需要使用更强大的awk来截取字符串
例如:df -h | cut -f 5 -d " "
这样是截取不出来的
可以使用awk
df -h | grep "/dev/vda1" | awk '{print $5}' | cut -f 1 -d "%"
查看全部 -
awk命令
awk '条件1{动作1}条件2{动作2}...' 文件名
例子:
使用cut
cut -f 1,3 test.txt使用awk
(其中的$1代表第一个字段,$3第三个字段,$0代表每一行的记录)
awk '{printf $1 "\t" $3 "\n"}' test.txt
查看全部 -
1、例子
printf '%s' 123456(注意要加单引号)
printf '%s\t%s\t%s\n' 1 2 3 4 5 6
printf '%s\t%s\t%s\t%s\n' $(cat test.txt)
2、
printf是给awk命令使用的
print代表默认在最后加入换行符(linux命令默认没有安装),
printf默认没有加入换行符
查看全部 -
printf '输出类型输出格式' 输出内容
输出类型:
-%ns:输出n个字符
-%ni:输出n个数字
-%8.2f:共输出8位数,其中两位是小数,六位是整数
输出格式:
- \b:输出退格键
- \f:输出清除屏幕
- \n:换行
- \r:回车
- \t:水平Tab键
- \v:垂直Tab键
查看全部
举报