-
字符替换命令sed 与vi命令的不同:vi要与用户交互,sed可以让系统自动实现 1、sed命令格式(下图)注意加单引号'' 2、行数据操作#sed -n ‘2p’ student.txt 3、删除整行#sed '2,4d' student.txt #表示删除输出内容的二到四行,没有加-i选项,所以文件内容不变 4、追加内容#sed '2a piaoliang jiushi renxing' student.txt #在第二行后面换行追加内容 5、插入内容#sed '2i piaoliang jiushi renxing' student.txt #在第二行前面新插入一行内容 6、替换整行#sed '2c furong bu ji ge' student.txt #将输出内容的第二行替换成指定内容 7、替换单个字符或者字符串#sed '2s/70/90/g' student.txt #将第二行的“70”替换成“90”,如果不指定行范围则搜索整个文件内容 8、同时替换多个字符串#sed -e 's/furong//g;s/fengjie//g' student.txt #用分号“;”将动作隔开查看全部
-
awk默认以空格或者Tab制表符作为分隔 1、条件BAGIN表示在所有动作执行前先执行BEGIN后的那个动作 如#df -h | awk 'BEGIN{print "test"}{print $1 "\t" $3}'会在最前面输出test awk在指定分隔符前面一定要加BEGIN 2、条件END表示在所有动作执行后才执行END后的那个动作 如#df -h | awk 'END{print "test"}{print $1 "\t" $3}' 会在最后面输出test 3、FS内置变量 如:#cat /etc/passwd | grep "/bin/bash" | awk 'BEGIN{FS=":"}{print $1 "\t" #3}' #awk在指定分隔符前面一定要加BEGIN,此例截取第1、3列 #cat student.txt | grep -v Name | awk '$4>=70{print $2}' #此例截取除了列头的成绩大于等于70分的学生姓名,grep -v Name为取反命令,不输出带“Name”的行查看全部
-
awk截取列命令格式 注意加单引号''和大括号{} 例:#awk '{print $2 "\t" $4}' student.txt #df -h | awk '{print $1 "\t" $3}' #只有动作没有条件 awk本质:读取内容一行,按照条件和动作输出需要截取的内容,完成后再读取、截取下一行查看全部
-
print与printf的区别 linux只识别printf,print不是linux命令查看全部
-
printf输出格式查看全部
-
printf输出格式 注意一定要加单引号''查看全部
-
cut是列提取命令,默认用的分隔符是Tab键,要指定分隔符用-d选项 当截取比较规律的文档,如有“:”或有Tab制表符时,用cut截取比较方便 #cut [选项] 文件名 选项(选项没有先后顺序): -f 列号:提取第几列(如果要提取几列,则用“,”将列号隔开) -d 分隔符:按照指定分隔符分隔列 #df -h | cut -d " " -f 2,3 cut命令无法识别以空格为分隔符的文件内容,如df命令内容,用#df -h | cut -f 3 -d " " #无法截取想要的内容 grep是行提取命令查看全部
-
正则表达式之例1查看全部
-
正则表达式之\{n,m\}查看全部
-
正则表达式之\{n,\}查看全部
-
正则表达式之\{n\}查看全部
-
正则表达式之\查看全部
-
正则表达式之[]之^查看全部
-
正则表达式之[]查看全部
-
正则表达式之^和$查看全部
举报
0/150
提交
取消