面试准备(Linux)

一 常用命令
  1. grep —— 文件中搜索给定字符串 grep word file 在file中查找包含word的行
    -v 不包含word的行
    -c 只显示搜索到多少行
    -i 不区分大小写搜索
    -l 多个文件中哪些文件包含word -L 多个文件中哪些文件不包含word
    ^word 以word开头的行 word$ 以word结尾的行
    -w 包含word这个词的行(forword就不会匹配成功,只有word才行)
    多条件搜索:egrep
    以word开头或者以letter结尾的 egrep '^word|letter$' file
    参考:
    http://c.biancheng.net/linux/grep.html

  2. cut——取每一行中给定位置的元素 cut -c 3 file 取file内每一行的第三个字节
    -b 按字节定位 -c 按字符定位 -f按域定位

  3. wc——统计文件中的字节数,词数,行数 wc -w file 统计file里有多少个词
    -c 字节数
    -m 字符数
    -w 词数
    -l 行数
    -L 显示最长行的字节数

  4. split——拆分文件 split -10 file 将file按10行为单位拆分
    -b 按指定大小为单位拆分 如 -b 500m 按500m大小拆分

  5. vi——替换文本内容
    输入进入底线命令模式

s/abc/xyz/          将光标处abc替换为xyz
s/abc/xyz/g        将光标所在行所有abc替换为xyz
m,ns/abc/xyz/g    将m行到n行里所有的abc替换为xyz   
特别的  1,$s/abc/xyz/g 将全文里所有的abc替换为xyz  $代表最后一行  也可以写为 %s/abc/xyz/g 
s/a\./ab/g      将a. 替换为ab,因为‘.’ 为特殊匹配符,需要用\取消特性
  1. sed——替换,删除,更新文本内容
    sed ‘command’ file 对file文件执行command命令
    linux命令| sed ‘command’ 对linux命令得到的文件执行sed操作

sed参数:
-e 多点编辑,即执行多个命令,每个命令前加-e

sed -e '3,$d' -e 's/bash/blueshell/'  //将第3行到最后一行删除,然后将bash替换为blueshell,感觉应该给s前面加1,2

-f 执行的命令从-f后的文件读取
-n 只显示处理后的结果,不输出全文

command部分命令:
a——给该行之后新加字符串(加到当前行的下一行)

sed  '4a newline' file   //给file文件的第四行后面加newline,成为第五行

i——给该行前加字符串(加到当前行的前一行)

sed '4i newline' file  //给第四行前面加newline作为新的一行

d——删除该行

sed '2,5d' file    //将file文件的第2-5行删除
sed '2,$d'  file    //将file文件第2行到最后一行全部删除
sed '/root/d' file    //将file文件中包含root的行全部删除

c——n1-n2行的内容用字符串取代

sed  '2,5c  newline'   file  //将第2行到第5行替换为newline

s——将b词用a词替换,与vi命令类似

sed '2s/root/newroot/g' file   将file第二行的root替换为newroot

p——打印,常与-n一起使用

sed -n '5,7p' file  //将file文件第5行到第7行打印

linux中^表示一行开头,$表示一行结尾

参考:
http://www.runoob.com/linux/linux-comm-sed.html

猜你喜欢

转载自blog.csdn.net/aikudexue/article/details/88693262