命令行模式补充,末行模式命令,sed命令、awk命令、grep命令

命令功能可以组合使用

文件的时间

stat 文件路径	查看文件

访问时间:atime,查看内容,用cat检测
修改时间:mtime,修改内容
改变时间:ctime,修改内容,修改权限等属性,凡是有改动都会变

vim编辑器命令行模式补充

批量加注释:
	Ctrl+v进入可视块,上下选中要改的列,shift+i进入编写模式,加#,按两下esc退出可视块,要改的行就批量加注释了。

vim编辑器末行模式命令

shift+冒号进入
% s/^egon/EGON/g  
%  所有行
^  表示以什么开头的行
% s/egon/新内容/g  如果要替换的新内容不写,删除egon
% s/要替换的内容/新内容/g  (%号表示所有行。g管的是某一行的所有的要替换的内容,不加g的话只替换某一行第一个要替换的内容。)
格式:
	范围 s/要替换的内容/新内容/g
$	末尾

sed命令

流式编辑器,主要擅长对文件的编辑操作,我们可以事先定制好编辑文件的指令,然后让sed自动完成对文件的整体编辑
sed命令默认自带输出信息。
默认改完的结果输出,原文本不变
‘选项‘加i,把改完的结果覆盖原文件,不输出。
定位可以是条件,x>3 x<5 x=4
用法:
sed 选项 ‘定位某些行+命令‘ 文件路径	(如果不写定位,默认所有行。只对规定的行执行命令处理)

选项:


sed -r ‘2p‘ 1.txt	(sed默认自带输出信息)
‘定位行+命令‘
p:打印	(sed默认自带输出信息,所以打印的行会输出显示两行)
d:删除  ‘3,$d‘ (删除3~最后一行)         ‘3d;5d‘(删除第3行,第5行)
定位行后的命令:
-n: 取消默认输出
-r:支持扩展
-i:把改完的结果覆盖原文件,不输出
命令可以用;号连接多多条,如1d;3d;5d代表删除1,3,5行
-c:改变/替换整行  	‘1c xxxx‘ (第一行替换成xxxx)
s(s///g):	  ‘1s s/啊/哦/g‘ (把第一行的‘啊‘改成‘哦‘)

正则定位:
定位行可以写成条件,//内写条件
‘/^xx/d‘  删除以xx开头的行
‘/xx$/d‘  删除以xx结尾的行
‘/xx/d‘   删除包含xx的行
‘/^x/‘{print $2} 打印x开头的第二列
sed -r ‘/1/s/1/2/g‘  包含egon的行,将1改成2

awk命令

awk主要用于处理有格式的文本,例如/etc/passwd这种

awk -F: ‘NR>=1 && NR<=3{print NR,$1,$3}‘ 文件路径
-F:  -F后面写行的分隔符,这次举例的行分隔符是冒号
&&类似于python中的and,表示条件同时满足
打印第一列和第三列
NR代表输出时添加行号,$1代表第一列
$1===》$3  中间的===》可以是任何形式,在两个内容之间插入符号


 || 表示或者
 && 表示and 条件同时满足的意思
{print NR,$1,$3,NF}中的NR表示显示打印列,内容在原文本的行号(哪一行)。NF表示所在行被分成多少列(NF搭配$,$NF意思是最后一列),$(NF-1)表示表示倒数第二列

grep命令

grep擅长过滤/查找内容
grep ‘^root‘ /etc/passwd   (过滤该文件内以root开头的内容)
grep ‘root‘ /etc/passwd   (过滤该文件内包含root的内容)
grep -rl ‘root‘ /etc/	(打印出etc文件夹下包含root的文件夹)
选项
-n 行号
-i 忽略大小写
-rl 递归着找,找到底
-rl可用于查找某个大文件下的文件/文件夹/信息内容。

ps aux 查看当前系统所有运行进程
ps aux | grep bash  组合使用,在所有进程中找到包含bash的进程 
kill -9 进程PID  
-9 强制

命令行模式补充,末行模式命令,sed命令、awk命令、grep命令

上一篇:017、备份恢复原理


下一篇:有关导数的一点点学习