掌握这十个Linux命令,秒变Linux老手
- 开源代码
- 2025-08-21 12:00:02

前言
在Linux下,完成一个事情往往有N种方法。Linux的一大哲学就是"一个工具只做一样事情",通过不同工具的组合使用,完成不同的需求。熟练掌握好常用命令,有时事半功倍,起到出其不意的效果。不仅大大提升你的工作效率,同时也带来喜悦感和成就感。学会下面这些命令,Linux老手也不敢小瞧你。
实例 删除文件,文件名中可能含各种特殊字符 递归删除以“._”开头的文件:find . -type f -name “._*” -print0 | xargs -0 rm -f
注意,加上-print0和xargs 的-0参数能解决文件中出现各种特殊字符导致命令失败的问题。
find命令如果输出到管道上,建议用-print0代替print,以防止输出中包含特殊字符。xargs中的-0参数也是起到对特殊字符(如引号和斜杠)转义的作用。OSX下经常要删除.DS_Store文件:
find . -type f -name “.DS_Store” -print0 | xargs -0 rm -f
也可以用awk命令。删除所有pyc文件:
find . -name “*.pyc” |awk ‘{cmd="rm "$0;system(cmd)}’
删除文件名乱码的文件, 先找到文件的inode编号,再删除之:
ls -li find ./* -inum 1442583 -exec rm -f {} ;
递归找出大文件 经常需要查看磁盘空间被哪些文件占用了,可以用:du -a /dir/ | sort -n -r | head -n 20
只查找第一级目录:
du -h --max-depth=1 /var
于是,递归查找最大文件,可以这么写:
find / -type f -printf “%s\t%p\n” | sort -n | tail -1 find $HOME -type f -printf ‘%s %p\n’ | sort -nr | head -10
当前目录下的文件/文件夹大小排序:
du -hs * | sort -n -r
查看inode大小:
find . -xdev -type f | cut -d “/” -f 2 | sort | uniq -c | sort -n
后台运行一个任务nohup 命令 > /dev/null 2>&1
将正常输出和错误重定向到/dev/null
进程查看 显示进程完整的命令语句,尤其对查看Java进程有用:ps aux | grep java
按内存使用率查看:
ps aux | sort -nk 4
按CPU使用率查看:
ps aux | sort -nk 3
递归搜索和替换grep -rl 查找字段 路径|xargs sed -i “s/查找字段/替换字段/g” sed -i “s/garden/myGarden/g” ls find . -type f -name ‘*.html’ | xargs perl -pi -e ‘s|北京|上海|g’
删除无用的docker镜像:
docker rmi $(docker images | grep “^” | awk ‘{print $3}’)
查看哪些端口在监听 查看某个进程监听的端口号:netstat -lnp | grep xxx
查看某个端口号谁在监听, 例如查看监听8080的进程
lsof -i:8080
身份切换 切换到root:sudo -i bash sudo bash -c bash
这两条命令在docker容器环境下很实用,经常不为人知。
杀进程大法kill $(pgrep 进程名) 另: killall -9 webstorm
杀掉所有webstorm进程
post请求 采用curl命令可以发送各种HTTP请求,程序员必备技能。curl -H “Content-Type: application/json” -d @/data/my.json http://localhost:8080/api/service/registry/add
如果不指定content-type, 默认是:application/x- -form-urlencoded
使用for进行遍历 可以直接在命令行写一行for语句,无需写到脚本。for p in ls /home/mini-rds/mysql/; do echo KaTeX parse error: Expected 'EOF', got '&' at position 3: p &̲& mysql -h127.0…p -uroot -e ‘show slave status\G’ | grep ‘Master_Host’; done
一行语句查找满足条件的某个docker容器:
for conId in $(docker ps -q|grep Up);do docker inspect c o n I d ∣ g r e p 170.1.80.12 ; i f [ " conId | grep 170.1.80.12 ;if [ " conId∣grep170.1.80.12;if["?" -eq “0” ];then echo $conId; fi; done
总结本文通过实际例子展示了Linux基本命令的用法。要想熟练使用Linux,掌握下列命令是必不可少的。
包管理: apt, yum, dpkg搜索: find和grep文件处理: cat, more, less进程:ps, top, htop网络: netstat, lsof, ip, ifconfig, curlxargs: 构建一条可执行命令,将标准输入作为待构建命令的参数文本处理:sed、awk、cut基本的shell语法: for, if注意shell中几个特殊字符的作用: 单引号和双引号都将剥夺其中的所有字符的特殊含义,而双引号中的’$‘(参数替换)和’`'(命令替换)是例外,而反引号和$()将执行里面的命令,以返回结果替换所在的字符串的相应部分。掌握这十个Linux命令,秒变Linux老手由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“掌握这十个Linux命令,秒变Linux老手”