Linux 常用命令速查手册(Java开发版)

Linux 常用命令速查手册(Java开发版)

1.文件与目录操作

命令 说明 常用示例
ls 列出目录内容 ls -la (显示所有文件,包括隐藏文件,详细信息)
cd 切换目录 cd /path/to/dir, cd ... (返回上一级), cd ~ (回到家目录)
pwd 显示当前工作目录 pwd
mkdir 创建目录 mkdir new_dir, mkdir -p dir1/dir2/dir3 (递归创建)
touch 创建空文件或更新文件时间戳 touch filename.txt
cp 复制文件或目录 cp file1.txt file2.txt, cp -r dir1 dir2 (递归复制目录)
mv 移动或重命名文件/目录 mv old.txt new.txt, mv file.txt /path/to/dest/
rm 删除文件或目录 rm file.txt, rm -r dir (递归删除目录), rm -rf dir (慎用!)
cat 查看文件内容 cat filename.txt
more / less 分页查看文件内容 less filename.log (推荐,可上下翻页)
head 查看文件开头部分内容 head -20 filename.log (查看前20行)
tail 查看文件末尾部分内容 tail -100 filename.log (查看最后100行), tail -f filename.log (实时追踪日志!)

2.文本处理

命令 说明 常用示例
grep 文本搜索 grep "ERROR" application.log (搜索包含"ERROR"的行), grep -n "Exception" *.java (显示行号), grep -r "pattern" /path/to/search (递归搜索)
sed 流编辑器,用于文本替换、删除等 sed 's/old/new/g' file.txt (将文件中所有"old"替换为"new")
awk 强大的文本分析和处理工具 awk '{print $1}' file.txt (打印每行第一个字段)
sort 对文本行进行排序 sort filename.txt
uniq 报告或移除重复的行 sort file.txt | uniq (先排序再去重)
wc 统计文件的行数、单词数、字符数 wc -l filename.log (统计行数), wc -c filename.jar (统计字节数)

3.系统信息与资源监控

命令 说明 常用示例
top 实时显示系统进程和资源使用情况 top (按q退出)
htop top的增强版,更友好 htop (如果已安装)
free 显示内存使用情况 free -h (以人类可读的单位显示)
df 显示磁盘空间使用情况 df -h (以人类可读的单位显示)
du 显示目录或文件的磁盘使用情况 du -sh /path/to/dir (显示目录总大小), du -h --max-depth=1 /opt (查看/opt下各目录大小)
uname 显示系统信息 uname -a (显示所有信息)
ps 显示当前进程状态 ps aux (显示所有进程), ps -ef | grep java (查找Java进程)
netstat 显示网络连接、路由表、接口统计等 netstat -tuln (查看监听的端口), netstat -anp | grep :8080 (查看8080端口的连接)
ss netstat的现代替代品,更快 ss -tuln

4.网络操作

命令 说明 常用示例
ping 测试网络连通性 ping google.com
curl 传输数据,常用于测试HTTP接口 curl http://localhost:8080/health, curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' http://api.example.com
wget 从网络下载文件 wget http://example.com/file.zip
scp 安全地在本地和远程主机间复制文件 scp localfile.txt user@remote:/path/to/dest/, scp user@remote:/path/to/file.txt ./
ssh 安全登录远程主机 ssh username@hostname, ssh -p 2222 user@host (指定端口)

5.进程管理

命令 说明 常用示例
ps 查看进程 ps aux | grep java
kill 终止进程 kill PID, kill -9 PID (强制终止,慎用)
killall 按进程名终止所有同名进程 killall java
nohup 使进程在退出终端后继续运行 nohup java -jar myapp.jar & (后台运行,输出到nohup.out)
& 将命令放到后台运行 java -jar app.jar &
jobs 查看当前终端的后台任务 jobs
fg 将后台任务调到前台 fg %1 (恢复第一个后台任务)

6.权限管理

命令 说明 常用示例
chmod 修改文件或目录的权限 chmod 755 script.sh (rwxr-xr-x), chmod +x script.sh (添加执行权限)
chown 修改文件或目录的所有者 chown user:group filename
chgrp 修改文件或目录的所属组 chgrp group filename

7.压缩与解压

命令 说明 常用示例
tar 打包和解包 tar -cvf archive.tar dir/ (打包), tar -xvf archive.tar (解包), tar -czvf archive.tar.gz dir/ (打包并gzip压缩), tar -xzvf archive.tar.gz (解压gzip包)
gzip / gunzip 压缩/解压文件 gzip file.txt (生成file.txt.gz), gunzip file.txt.gz
zip / unzip 压缩/解压zip文件 zip -r archive.zip dir/, unzip archive.zip

8.查找文件与内容

命令 说明 常用示例
find 在目录层次结构中搜索文件 find /path -name "*.log" (按文件名查找), find . -type f -size +100M (查找大于100M的文件), find /opt -user appuser (查找属于appuser的文件)
locate 快速查找文件(基于数据库) locate filename (需先运行updatedb)
grep (再次强调) 在文件中搜索文本 grep -r "NullPointerException" /var/log/myapp/

9.用户与环境

命令 说明 常用示例
whoami 显示当前用户名 whoami
who 显示当前登录的用户 who
env 显示环境变量 env | grep JAVA
echo $VAR 显示特定环境变量的值 echo JAVA_HOME, echo PATH
export 设置环境变量(临时) export MY_VAR=value

10.实用技巧与组合命令

  • 管道 |:将前一个命令的输出作为后一个命令的输入。
    • 示例:ps aux | grep java | grep -v grep (查找Java进程,排除grep命令本身)
  • 重定向 > 和 >>:
    • 覆盖写入文件。java -jar app.jar > output.log
    • 追加写入文件。echo "Error occurred" >> error.log
  • 后台运行 &:java -jar myapp.jar > app.log 2>&1 &
  • 命令替换:echo "Today is $(date)"
  • 检查Java进程和端口:
    • ps aux | grep java
    • netstat -tuln | grep 8080
    • lsof -i :8080
  • 快速查看日志并过滤:
    • tail -f application.log | grep "ERROR"
  • 批量操作:
    • for file in *.txt; do echo "Processing $file"; done
相关推荐
riderxin2 小时前
【20251028】固定Ubuntu的IP地址
linux·tcp/ip·ubuntu
赖small强2 小时前
Linux 内核 8 类同步机制详解(原理、场景与示例)
linux·信号量·原子操作·自旋锁·内核同步方法·读-写自旋锁·读-写信号量
撩得Android一次心动2 小时前
Android 四大组件——BroadcastReceiver(广播)
android·java·android 四大组件
WPG大大通2 小时前
AIoT | 软件:Astra MCP边缘算力构建详解
经验分享·笔记·python·硬件架构·代码
canonical_entropy2 小时前
Nop平台到底有什么独特之处,它能用在什么场景?
java·后端·领域驱动设计
chilavert3182 小时前
技术演进中的开发沉思-174 java-EJB:分布式通信
java·分布式
YJlio2 小时前
PsService·下(7.21):Find/SetConfig 与服务的启动/停止/重启/暂停/恢复
linux·运维·服务器
波诺波2 小时前
环境管理器
linux·前端·python
诸葛思颖2 小时前
把本地 Python 项目用 Git 进行版本控制并推送到 GitHub
git·python·github