[超全整理] Java 程序员必备的 100 条 Linux 命令大全
liuian 2025-07-14 18:22 29 浏览
一、基础操作(10条)
# 1. ls - 查看目录内容
ls -l # 长格式显示文件和目录
ls -a # 显示隐藏文件
ls -lh # 带单位显示文件大小
# 2. cd - 切换目录
cd /opt # 进入/opt目录
cd .. # 返回上级目录
cd ~ # 回到用户家目录
# 3. pwd - 显示当前路径
pwd # 输出:/home/user
# 4. mkdir - 创建目录
mkdir project # 创建project目录
mkdir -p a/b/c # 递归创建多级目录
# 5. rm - 删除文件/目录
rm file.txt # 删除文件
rm -rf dir # 强制递归删除目录
# 6. cp - 复制文件/目录
cp src.txt dst/ # 复制文件到目录
cp -r src/ dst/ # 递归复制目录
# 7. mv - 移动/重命名文件
mv file.txt new.txt # 重命名文件
mv src/ dir/ # 移动目录
# 8. touch - 创建空文件或更新时间戳
touch log.txt # 创建空文件
# 9. cat - 查看文件内容
cat config.properties # 显示文件全部内容
# 10. echo - 输出内容或变量
echo "Hello World" # 输出文本
echo $JAVA_HOME # 输出环境变量值
二、文件编辑(8条)
# 11. vim - 文本编辑器
vim app.java # 编辑Java文件
# 进入后按i进入编辑模式,编辑完成后按Esc,输入:wq保存并退出
# 12. nano - 简易编辑器
nano readme.txt # 编辑文本文件
# 13. more/less - 分页查看大文件
less log.txt # 分页查看日志文件
# 按/搜索关键词,n下一个,N上一个,q退出
# 14. head/tail - 查看文件首尾内容
head -n 10 log.txt # 显示前10行
tail -f app.log # 实时监控文件追加内容
# 15. grep - 文本搜索
grep "ERROR" log.txt # 搜索包含ERROR的行
grep -i "java" file.txt # 忽略大小写搜索
# 16. sed - 文本替换
sed -i 's/old/new/g' file.txt # 将文件中所有old替换为new
# 17. awk - 文本处理
awk '{print $1}' file.txt # 打印每行第一列
# 18. diff - 比较文件差异
diff file1.txt file2.txt # 显示两个文件的不同之处
三、权限与用户管理(8条)
# 19. chmod - 修改文件权限
chmod +x script.sh # 添加执行权限
chmod 755 app.jar # 精确设置权限(rwxr-xr-x)
# 20. chown - 修改文件所有者
chown user:group file.txt # 修改所有者和组
# 21. useradd/userdel - 管理用户
useradd dev # 创建新用户
userdel -r dev # 删除用户及其家目录
# 22. passwd - 修改密码
passwd root # 修改root用户密码
# 23. su/sudo - 切换用户/以管理员执行
su - user # 切换到user用户
sudo yum install java # 以root权限安装Java
# 24. id - 查看用户信息
id user # 显示用户ID、组ID等信息
# 25. groups - 查看用户所属组
groups user # 列出用户所属的所有组
# 26. whoami - 显示当前用户
whoami # 输出当前登录的用户名
四、进程管理(10条)
# 27. ps - 查看进程状态
ps -ef # 显示所有进程
ps aux | grep java # 过滤Java进程
# 28. top - 实时监控进程资源
top # 动态显示系统进程资源占用
# 按q退出,按M按内存排序,按P按CPU排序
# 29. htop - 交互式进程监控
htop # 比top更直观的进程监控工具(需安装)
# 30. kill/killall - 终止进程
kill 1234 # 终止进程ID为1234的进程
kill -9 1234 # 强制终止进程
killall java # 终止所有Java进程
# 31. pkill - 按名称终止进程
pkill -f "java -jar app.jar" # 终止包含指定字符串的进程
# 32. nice/renice - 调整进程优先级
nice -n 10 java -jar app.jar # 以较低优先级启动进程
renice 10 1234 # 将进程ID为1234的进程优先级调整为10
# 33. jps - 查看Java进程
jps -l # 显示Java进程ID和主类名
# 34. jstat - 监控JVM统计信息
jstat -gc 1234 # 查看进程1234的GC情况
# 35. jstack - 打印JVM线程堆栈
jstack 1234 > stack.txt # 将线程堆栈导出到文件
# 36. jmap - 生成JVM堆转储
jmap -dump:format=b,file=heap.hprof 1234 # 生成堆转储文件
五、网络操作(12条)
# 37. ping - 测试网络连通性
ping www.google.com # 测试与Google的连接
# 38. traceroute - 追踪网络路径
traceroute www.example.com # 显示到目标的路由路径
# 39. ifconfig/ip - 查看网络接口
ifconfig eth0 # 查看eth0接口信息
ip addr show # 显示所有网络接口信息
# 40. netstat/ss - 查看网络连接和端口
netstat -tulpn # 显示所有监听端口和连接
ss -tulpn # 更高效的网络连接查看工具
# 41. curl - 发送HTTP请求
curl https://api.example.com # 发送GET请求
curl -X POST -d 'data=123' https://api.example.com # 发送POST请求
# 42. wget - 下载文件
wget https://example.com/file.zip # 下载文件
# 43. ssh - 远程登录
ssh user@host # 登录远程主机
ssh -i key.pem user@host # 使用密钥登录
# 44. scp - 远程文件传输
scp local.txt user@host:/path/ # 上传文件
scp user@host:/path/remote.txt . # 下载文件
# 45. sftp - 安全文件传输协议
sftp user@host # 连接到远程主机
# 进入后使用put上传,get下载
# 46. nslookup/dig - DNS查询
nslookup google.com # 查询域名对应的IP
dig +short google.com # 只显示IP结果
# 47. telnet - 测试端口连通性
telnet host 8080 # 测试主机的8080端口是否开放
# 48. nc - 网络工具
nc -z host 8080 # 扫描端口
nc -l 8080 # 监听8080端口
六、系统信息(8条)
# 49. uname - 查看系统信息
uname -a # 显示完整系统信息
# 50. hostname - 查看/设置主机名
hostname # 显示当前主机名
hostnamectl set-hostname newname # 设置新主机名
# 51. date - 显示/设置系统时间
date # 显示当前时间
date -s "2023-01-01 12:00:00" # 设置系统时间
# 52. uptime - 查看系统运行时间和负载
uptime # 显示系统运行时间和负载情况
# 53. df - 查看磁盘空间
df -h # 以人类可读格式显示磁盘空间使用情况
# 54. du - 查看目录大小
du -sh /opt # 显示/opt目录的总大小
du -h --max-depth=1 /opt # 显示/opt下一级目录的大小
# 55. free - 查看内存使用
free -h # 以人类可读格式显示内存使用情况
# 56. vmstat - 查看系统内存、CPU状态
vmstat 1 10 # 每秒采样1次,共采样10次
七、压缩与归档(6条)
# 57. tar - 打包/压缩文件
tar -zcvf archive.tar.gz dir/ # 创建gz压缩包
tar -zxvf archive.tar.gz -C /tmp # 解压到/tmp目录
# 58. zip/unzip - ZIP格式压缩/解压
zip -r archive.zip dir/ # 压缩目录为ZIP
unzip archive.zip -d /tmp # 解压ZIP到/tmp
# 59. gzip/gunzip - GZIP压缩/解压
gzip file.txt # 压缩文件
gunzip file.txt.gz # 解压文件
# 60. bzip2/bzcat - BZIP2压缩/查看
bzip2 file.txt # 压缩文件
bzcat file.txt.bz2 # 查看压缩文件内容
# 61. xz - XZ压缩
xz file.txt # 压缩文件为xz格式
# 62. unrar - 解压RAR文件
unrar x archive.rar # 解压RAR文件
八、软件包管理(8条)
基于RPM(CentOS/RHEL)
# 63. yum - 包管理器
yum install java-11-openjdk # 安装Java 11
yum update # 更新所有软件包
# 64. rpm - 管理RPM包
rpm -ivh package.rpm # 安装RPM包
rpm -e package # 卸载RPM包
基于DEB(Ubuntu/Debian)
# 65. apt-get/apt - 包管理器
apt install openjdk-11-jdk # 安装Java 11
apt update && apt upgrade # 更新软件包
# 66. dpkg - 管理DEB包
dpkg -i package.deb # 安装DEB包
dpkg -r package # 卸载DEB包
通用
# 67. wget/curl安装脚本
curl -sSL https://get.docker.com | sh # 安装Docker
# 68. snap - 软件包管理
snap install postman # 安装Postman
# 69. make/configure - 编译安装源码
./configure # 配置编译选项
make # 编译源码
make install # 安装程序
# 70. pip - Python包管理
pip install requests # 安装Python请求库
九、服务与定时任务(6条)
# 71. systemctl - 管理系统服务
systemctl start nginx # 启动Nginx服务
systemctl enable nginx # 设置Nginx开机自启
systemctl status nginx # 查看Nginx状态
# 72. service - 管理服务(旧系统)
service httpd restart # 重启Apache服务
# 73. chkconfig - 管理服务启动项(旧系统)
chkconfig httpd on # 设置Apache开机自启
# 74. crontab - 设置定时任务
crontab -e # 编辑定时任务
# 添加类似下面的行:0 0 * * * /backup/script.sh (每天0点执行备份)
# 75. at - 一次性定时任务
at 23:00 today # 设置今天23点执行命令
# 输入命令后按Ctrl+D保存
# 76. journalctl - 查看系统日志
journalctl -u nginx.service # 查看Nginx服务日志
journalctl -f # 实时监控日志
十、高级操作(10条)
# 77. find - 文件搜索
find / -name "*.jar" 2>/dev/null # 搜索所有.jar文件
find . -type f -mtime -1 # 查找一天内修改的文件
# 78. xargs - 处理命令输出作为参数
find . -name "*.txt" | xargs rm # 删除所有txt文件
# 79. 管道(|) - 连接多个命令
ps aux | grep java | awk '{print $2}' # 获取Java进程ID
# 80. 重定向(>, >>) - 输出重定向
echo "hello" > file.txt # 覆盖文件内容
echo "world" >> file.txt # 追加内容到文件
# 81. alias - 创建命令别名
alias ll='ls -l' # 创建ll别名
alias grep='grep --color=auto' # 带颜色的grep
# 82. export - 设置环境变量
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk # 设置Java_HOME
# 83. source - 重新加载配置文件
source ~/.bashrc # 重新加载bash配置
# 84. time - 测量命令执行时间
time java -jar app.jar # 测量Java程序执行时间
# 85. watch - 定时执行命令并显示结果
watch -n 1 'ps aux | grep java' # 每秒刷新一次Java进程
# 86. tee - 同时输出到屏幕和文件
ls -l | tee files.txt # 同时显示和保存目录列表
十一、快捷键与技巧(8条)
# 87. Ctrl+C - 终止当前命令
# 在运行命令时按Ctrl+C终止执行
# 88. Ctrl+Z - 暂停当前命令
# 在运行命令时按Ctrl+Z暂停,可用fg恢复
# 89. Ctrl+D - 退出Shell会话
# 在终端中按Ctrl+D退出当前会话
# 90. Tab - 命令/文件名自动补全
# 输入命令或文件名时按Tab自动补全
# 91. ↑/↓ - 浏览历史命令
# 按上/下箭头浏览之前输入的命令
# 92. !! - 执行上一条命令
!! # 执行上一条命令
# 93. history - 查看命令历史
history # 显示所有历史命令
!123 # 执行历史中第123条命令
# 94. man - 查看命令手册
man ls # 查看ls命令的手册页
十二、Java开发专用(4条)
# 95. java - 运行Java程序
java -jar app.jar # 运行JAR包
java -Xmx512m MainClass # 指定最大堆内存为512M
# 96. javac - 编译Java源文件
javac HelloWorld.java # 编译Java文件
# 97. javadoc - 生成Java文档
javadoc -d docs src/*.java # 生成Java文档到docs目录
# 98. jar - 创建/操作JAR包
jar cvf app.jar *.class # 创建JAR包
jar tf app.jar # 查看JAR包内容
十三、Docker相关(6条)
# 99. docker run - 运行容器
docker run -d -p 8080:8080 tomcat:9.0 # 后台运行Tomcat容器
# 100. docker ps - 查看运行中的容器
docker ps # 查看正在运行的容器
docker ps -a # 查看所有容器(包括已停止的)
总结
- 基础命令:先掌握ls、cd、mkdir、rm、grep等日常高频命令
- Java开发:重点熟悉jps、jstat、jstack、java等JDK工具
- 运维必备:掌握ps、top、netstat、systemctl等系统管理命令
- 实践为主:通过实际项目练习,遇到问题时查阅对应命令参数
相关推荐
- 电脑中病毒的原因(电脑中病毒正常吗)
-
电脑中毒的原因有以下几方面:1.网页被挂病毒。2.电脑裸奔,无防病毒软件。3.执行一些不安全的程序。4.U盘等不安全介质。5.电脑漏洞不及时补,被后台种毒。为了电脑不中病毒要注意以下几方面:1.更新系...
- 手机psd转换成jpg最简单方式
-
可以使用photoshop工具,方法如下:1、首先打开PS软件,然后选择自己需要的JPG格式的图片,在PS中打开。2、接下来先按快捷键“Ctrl+j”将图片复制出来,防止后面操作对原图片有损...
- win7提示激活码过期怎么办(win7激活已过期)
-
以win7为例,出现这样的问题原因分析:电脑的win7系统激活过又重新提示要激活的原因是因为微软对网络上的秘钥进行封杀所以导致我们激活无效。具体的解决方法:1、我们打开dos命令窗口,在创立中输入“s...
- 联想笔记本光驱驱动下载(联想电脑光驱驱动器在哪)
-
开机时进入BIOS,具体按什么牌子不同,按键也不同,开机有提示的,选择启动项,把光驱启动的顺序放到第一.按F10保存,重新启动就是光驱启动啦不需要设置光驱驱动,笔记本自带光驱驱动光驱是电脑的硬件设备,...
- win10装机必备实用软件(win10电脑装机必备软件)
-
1、office大部分的版本如office2007、office2000、office2011、office2013、office2016、office365等都支持win10。2、需要注意...
- 迅雷无法下载的链接用什么下载
-
1.可以使用其他下载工具代替迅雷。2.迅雷可能无法下载的原因有很多,比如网络问题、软件故障等。其他下载工具可以提供类似的功能,但可能具有更好的稳定性和兼容性。3.一些常见的替代迅雷的下载工具包括...
- apple官方网站(apple官方网站旗舰店)
-
1、首先打开浏览器,输入https://www.apple.com/;2、即可浏览苹果官网。 苹果公司(AppleInc.)是美国一家高科技公司。由史蒂夫·乔布斯、斯蒂夫·沃兹尼亚克和罗·韦恩(R...
- 哪些手机用鸿蒙系统(都什么手机能用鸿蒙系统)
-
截至目前,国内有以下几款手机品牌可以装鸿蒙系统:1.华为:华为Mate40系列、P40系列、Mate30系列、MatePadPro系列等。2.荣耀:荣耀V40、荣耀30系列、荣耀X10系列等...
- 手机u盘读不出来了怎么修复(手机u盘读取不出来)
-
1、手机不支持OTG功能,所以将U盘连接到手机后,手机无法识别U盘的内容,因此显示不了;这种情况只能换台支持OTG功能的手机来连接U盘才行。2、手机支持OTG功能,但是使用的OTG线质量有问题导致无法...
- 笔记本散热器买哪种好(笔记本散热器买哪种好贴吧)
-
散热器有十大品牌:九州风神、超频三,酷冷至尊Tt、AVC、思民、捷冷、安钛克Antec、安耐美Enermax、海盗船Corsair。能位列十大品牌,每一种的质量和功能都有保障。、目前网上销量最高的是九...
-
- 打印机驱动一直安装失败(打印机驱动一直安装失败怎么办)
-
打印机驱动程序安装失败需要对电脑进行其他设置,详细步骤如下:1,在电脑桌面上找到【计算机】并用鼠标右击。2,右击后在出现的选项中找到【管理】选项并点击打开。3,接下里会进入到计算机控制台界面,在这里要根据自己的电脑选择64位或者32位,选择...
-
2026-01-14 12:55 liuian
- ctrl加谁是截图(ctrl和什么键可以截图)
-
第一种:Ctrl+PrScrn使用这个组合键截屏,获得的是整个屏幕的图片第二种:Alt+PrScrn这个组合键截屏,获得的结果是当前窗口的图片第三种:打开qq,使用快捷键Ctrl+...
- 技嘉主板bios设置启动顺序(技嘉主板bios设置启动顺序怎么设置)
-
启动顺序设置方法如下:1、重启电脑连续按[DEL]键进入BIOS设置,按DEL进入BIOS设置。2、按键盘方向键右键切换到BOOT选项,将windows10功能设置为"其它操作系统"...
-
- 目前台式电脑主机怎么选(台式主机选择)
-
每个人对电脑的性需要不同,因此根据自己家的家庭需要,选择合适的电脑即可。以下简单说明:1,双核处理器+2G内存+集成显卡+机械硬盘。性能满足上网、看电影、聊天、办公、玩象棋之类的小游戏。价格在2000以内可以买到;2,四核处理器+4G内存+...
-
2026-01-14 12:05 liuian
- 一周热门
-
-
飞牛OS入门安装遇到问题,如何解决?
-
如何在 iPhone 和 Android 上恢复已删除的抖音消息
-
Boost高性能并发无锁队列指南:boost::lockfree::queue
-
大模型手册: 保姆级用CherryStudio知识库
-
用什么工具在Win中查看8G大的log文件?
-
如何在 Windows 10 或 11 上通过命令行安装 Node.js 和 NPM
-
威联通NAS安装阿里云盘WebDAV服务并添加到Infuse
-
Trae IDE 如何与 GitHub 无缝对接?
-
idea插件之maven search(工欲善其事,必先利其器)
-
如何修改图片拍摄日期?快速修改图片拍摄日期的6种方法
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
