linux命令记录
sed命令
直接编辑文件选项-i,会匹配file文件中每一行的第一个book替换为books:
1 | sed -i 's/book/books/g' file |
vim替换
替换当前行::s/foo/bar/g
全文::%s/foo/bar/g
vim打开折叠
:zc
折叠,只折叠最外层的折叠:zC
对所在范围内所有嵌套的折叠点进行折叠,包括嵌套的所有折叠:zo
展开折叠,只展开最外层的折叠:zO
对所在范围内所有嵌套的折叠点展开,包括嵌套折叠:[z
到当前打开的折叠的开始处:]z
到当前打开的折叠的末尾处
vim查找
查找字符串super:/super
或者:?super
两者的区别是前者从上往下搜索,后者是从下往上搜索
并且可以通过 n 或 N 进行上一个或下一个的匹配
vim消除搜索后的关键字高亮
输入:noh
压缩与解压
.tar.gz文件
压缩
1 | tar -zcvf FileName.tar.gz DirName # 将DirName和其下所有文件(夹)压缩 |
解压
1 | tar -zxvf FileName.tar.gz # 解压 |
解压到指定路径
1 | tar -C DesDirName -zxvf FileName.tar.gz # 解压到目标路径 |
.tar文件
打包
仅打包,并非压缩
1 | tar -cvf FileName.tar DirName # 将DirName和其下所有文件(夹)打包 |
解包
1 | tar -xvf FileName.tar # 解包 |
shell脚本接受命令行参数
1 | # test.sh |
$1
:是第一个参数
$0
:是文件本身
结果:
du查看文件或文件夹的大小
1 | du -h --max-depth=1 |
如果当前目录下文件和文件夹很多,使用不带参数的du
命令,可以循环列出当前目录下所有文件和文件夹所使用的空间。文件多时就会很乱,可以使用参数--max-depth=
指定深入目录的层数;
使用du -h --max-depth=0
命令,可以查看当前目录已使用的总空间大小及当前目录已使用的总空间大小;
使用du -h --max-depth=1
命令,可以查看当前目录已使用的总空间大小及当前目录下一级文件和文件夹各自使用的总空间大小。
查看端口号
1 | netstat -apn |
查看网络状态,a 是 all ,p 显示程序, n是显示程序对应的端口号
使用管道操作符可以查找端口号
1 | netstat -apn | grep 8080 |
查看进程信息
1 | ps -aux |
杀死进程
1 | kill -9 3306 // 强制杀掉进程号3306 |
查找文件中的字符串
1 | grep -e "fuck" text.txt |
查看文件
1 | find ./ -name test.txt // 在当前目录下查找名称带有text.txt的文件 |
awk命令
pass
添加用户
1 | sudo adduser username |
然后按提示操作。
添加root权限
1 | sudo vim /etc/sudoers |
修改如下文件:
1 | User privilege specification |