1、查找文件及文件夹
1)find path -name filename查找文件
eg: find / -name aa.py查找根目录下所有名为aa.py的文件
find ./ -name *.py 查找当前目录下所有后缀为py的文件
2)find path -type d 查找文件夹
eg: find ./ -type d 查找当前目录下所有文件夹,包含子文件夹
find ./ -type d -name test 查找当前目录下名为test的文件夹
2、在文件中查找特定内容
1)grep string file 在file文件中查找string,grep 对大小写敏感,若想忽略大小写,可加 -i
eg: grep info ./aa.log - i 在当前目录下aa.log文件中查找字符串"info",忽略大小写
2)若文本中含有二进制文件,用1)中形式会提示“匹配到二进制文件 file",影响查找,此时可用
more file | grep string
eg: more aa.log | grep info 在aa.log文件中查找字符串"info",同样,加-i忽略大小写
3)cat file | grep string也可用于查找特定内容
3、替换内容
sed -i "s/oldstring/newstring/g" filename
eg: sed -i "s/,/;/g" tmp.txt 将tmp.txt文件中所有英文逗号替换为英文分号
4、文件复制
1)cp fileA fileB 将单个文件fileA复制给fileB
cp -r fileA fileB 加-r表示fileA可以是文件夹,或者文件
scp -r A B 可以将不同linux服务器之间的文件/文件夹复制
2)复制文件特定几行内容到另一个文件
2.1)head -n 100 aa.txt >b.txt 将aa.txt文件前100行复制到b.txt中
tail -n 100 aa.txt > b.txt 将aa.txt文件最后100行复制到b.txt中
2.2)cat aa.txt |tail -n +10 | head -n 25 > b.txt 将aa.txt文件第10行开始(包括第10行)的25行内容复制到b.txt中
cat aa.txt |head -n 15 |tail -n +10 >b.txt 将aa.txt文件第10行到第15行复制到bb.txt中
2.3)sed -n "5,15p" aa.txt > b.txt 将aa.txt文件第5行至第15行复制到b.txt中
2.4)split -n 100 aa.txt 将文件aa.txt分成多份,每份100行
5、权限账户相关
1)设置/修改root账号密码:sudo passwd root
2)获取所有用户:cat /etc/passwd
3)创建用户:useradd name
4) 非root用户切换为root用户:sudo su 或 su -root
root用户切换为非root用户:exit 或 su tester (tester为用户)
5)赋予文件修改权限:chmod 777 file 或chmod -X file
赋予文件夹下所有文件修改权限:chmod -R 777 file
6、查看文件大小及解压缩
1)查看所有文件大小:ls -a
根据文件大小(显示合适单位)显示:ll -h
2) 显示当前目录文件夹大小: du -sh *
3)显示系统占用情况: df -h
4) 将file文件压缩为object.zip文件 :zip object.zip file
解压zip格式文件(./表示当前目录下):unzip object.zip ./
将file文件压缩为tar格式文件: tar cvf object.tar file
解压tar格式文件:tar -xvf object.tar
将file文件压缩为tar.gz格式:tar zcvf object.tar.gz file
解压tar.gz格式文件:tar -xvf object.tar.gz
7、统计文本行数
1)、wc -l file 统计file中总行数(包括全空行)
2)、grep "^$" file | wc -l 统计file文件中全空行行数
3)、grep -v "^$" file | wc -l 统计file文件中非全空行行数
8、查看端口占用情况
1)、netstat -anp |grep 8888 查看端口号8888是否别占用,返回listening表示被占用
2)、netstat -nultp 返回所有被占用端口
3)lsof -i:8888 返回含义待查询
9、防火墙开启/关闭
1)、查看防火墙运行状态: systemctl status firewalld
dead表示停止,active表示运行
2)、开启防火墙:systemctl start firewalld
3)、停止防火墙: systemctl stop firewalld
systemctl disable firewalld
10、环境变量
编辑环境变量:vim /etc/profile---->插入:export java_path=./jar------->source /etc/profile
11、vim下快捷键
1)、注释多行:vim下,control+v >按下键选多行>shift+i>输入#>Esc
2)、vim先显示行数:set nu
3)、跳到文档首行: :0(冒号0) 跳到文档末尾: :$(冒号$)
4)、跳到文档行首:0 跳到文档行末:e
5)、批量缩进,如第10行到第15行空一格:10,15> 反过来为:10,15<
12、获取cpu、memory信息,输出到文件中
nohup -b -d 10 -p PID |tee >>test.txt &
其中-d后参数为时间间隔10分钟获取一次
13、linux下查看文件编码方式:file 文件
windows下查看方式:hexdump.exe -C zi.txt
14、批量kill进程
ps -ef|grep 进程名 |awk '{print $2}'|xargs kill
15、给文件添加行号
awk '$0=""NR"."$0' tmp.txt
加个格式: awk '$0=""NR"_"$0' tmp.txt >>test.txtawk '$0=""NR"."$0' tmp.txt
效果:
1_jsfhs skj肌肤快速减肥是十分数据快速减肥
2_kjs
3_说减肥是减肥是分散
4_【】/2【42-5908晚饭吗4
5_sfjfw f