首页 > 代码库 > linux笔记 2-6 文件命令
linux笔记 2-6 文件命令
*****************6.文件命令********************
## 1.diff ##
diff file file1 //比较两个文件的不同
-c //显示不同的行
-u //按照统一格式统一输出生成补丁
-r //比较两个目录中文件的不同
patch file file.patch //打补丁
-b //备份原文件
## 2.grep ##
grep 关键字符 文件|目录 //在文件或目录中查找含有关键字的行
grep -i //忽略大小写
-n //显示关键字所在行
-c //显示过滤结果的个数
-v //反向过滤
-E //“关键字1|关键字2“ 过滤多个关键字
-r 目录 //在目录中查找含有关键字的文件
注意: ^关键字 //以关键字开头的
关键字$ //以关键字结尾的
例:在passwd文件中搜索含有root的行,并忽略大小写
在passwd文件中搜索含有root的行,并显示行号
在passwd文件中统计含有root的行的个数
在passwd文件中搜索含有root的行,且root不在行首
在passwd文件中搜索含有root或student的行
在/mnt中搜索含有root的文件
## 3.sort ## 排序
sort -n //纯数字排序
-u //去掉冗余
-t //指定分割符
-k //指定列
|uniq -c //去除冗余,并统计冗余个数
|uniq -d //显示冗余行
|uniq -u //显示唯一行
例:对file文件纯数字排序并去掉冗余
对file文件纯数字排序并去掉冗余并统计冗余个数
对file文件以:作为分隔符对第二列做纯数字排序
对file文件以:作为分隔符显示第二列冗余行
对file文件以:作为分隔符对第二列做纯数字排序去掉冗余并统计冗余个数
对file文件以:作为分隔符显示第二列唯一行
## 4.cut ##
cut // 截取字符
-d 分隔符 //指定分隔符
-f 1,7 //显示指定的列
-c 1-4 //显示指定的字符
## 5.sed ##
tr ‘a-z’ ‘A-Z’ file //转换大小写
sed ‘s/原字符/替换字符/g‘ file //替换
-e ‘策略1‘ -e ‘策略2‘ file //多个策略一起替换
-i file //把转换后的内容输入到指定文件
‘3,5s/原字符/替换字符/g‘ file //转换3-5行
5d file //屏蔽第五行
5p file //复制第五行
-n 5p file //只显示第五行
例:把passwd文件全部转换成大写
例:把passwd全文的root都替换成student
例:把passwd全文的root都替换成student并把所有的mail都替换成hello
例:把passwd的3-5行的nologin替换成root
例:查看passwd文件并复制第五行
例:查看passwd文件只显示第五行
## 6.awk ##
awk ‘{pattern + action}‘ {filenames}
pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。
练习,现有两个文件分别放有待创建的用户的用户名和用户密码
使用脚本创建这些用户
linux笔记 2-6 文件命令