1.grep:文件搜索与匹配工具
1)grep '某字符' 文件位置:显示包含此字符的那些行
-n:同时显示行号 grep -n 'test' file
-v:反义,现实不包含该字符的行 grep -v 'test' file
-i:忽略大小写
-w:匹配的只能是单词,而不是词中某一部分
2)一些高级用法:
grep 'test'* file:test后可以有字符也可以无字符,test,test23等都将被匹配
grep $'test' file:匹配以test结尾的
grep ^'test' file:匹配以test开头的
grep ^'test' file -r:file目录下递归的去匹配
2.wc
wc -l file:统计行数
3.文件重命名
mv 原文件名 目标文件
4.查看进程
ps -aux(一般可以搭配grep来筛选关键字)
-a:显示一个终端所有进程
-u:选择有效的用户id或者是用户名
-x:显示各个命令的具体路径
5.后台运行
nohup COMMAND &
1)nohup表示不挂断,no hang up,但是并没有在后台运行;缺省情况下,输出将保存在nohup.out中。
2)&表示在后台运行,二者往往一起使用。
然后可以查看运行的后台进程,jobs -l;不过只能看当前终端生效的进程,关闭终端以后,打开另一个终之后,该命令失效,只能通过ps命令查看进程。
3)nohup ./run.sh >log.out 2>&1 &:表示将日志打印到指定文件中,且若有异常退出也同样打印在其中。若不设置指定文件,默认新建nohup.out文件,有被覆盖风险。
6.awk:处理文本功能强大,这里简单说一个。
打印指定行。 awk 'NR==1{print}' file:打印file中第一行,NR表示行号
7.sort:按照某一列进行排序
sort -t : -k 3 file
-t后表示每一列之间的分隔符号;-k后表示按照第几列进行排序
8.&
将任务放在后台执行,避免执行过程过大在终端中卡住。执行命令后,bash会提示该进程的ID,每个进程有唯一ID,可供查看。
jobs:如果在启动该进程的终端中,可以显示当前终端正在运行的进程,包括前台进程与后台进程(守护进程)。
fg:可将后台进程移动到前台,fg %PID即可。如果启动进程的终端被关闭了,或者切换到了另一个终端,jobs和fg命令就无法使用了。
ps命令(代表 process):来获取所有正在运行的进程的进程 ID。
9.scp:实现两个 Linux主机之间复制文件和目录
从本地复制到远程: scp 本地文件位置 远程用户名@远程服务器
从远程复制到本地: scp 用户名@服务器名:服务器文件的位置 保存的位置
10.显示文件第多少行 head -n 100:显示前100条 tail -n 100:显示尾部100条 tail -n +100:从第100条开始显示,显示100条以后的。。 sed -n ‘5,10p’ filename:显示第5行到第10行