当前位置: 首页 > news >正文

Linux常用命令指南

Linux是开发和运维人员常用的操作系统,熟练掌握Linux命令可以极大地提高工作效率。本文将介绍一些常用的Linux命令,并重点讲解如何监控Java程序的运行状态。

1. 文件和目录操作

1.1 ls - 列出目录内容

ls -l  # 列出详细信息
ls -a  # 列出所有文件,包括隐藏文件
ls -lh # 以人类可读的格式列出文件大小

1.2 cd - 切换目录

cd /path/to/directory  # 切换到指定目录
cd ..                 # 切换到上级目录
cd ~                  # 切换到用户主目录

1.3 pwd - 显示当前目录

pwd  # 显示当前工作目录的路径

1.4 cp - 复制文件或目录

cp source_file destination_file  # 复制文件
cp -r source_dir destination_dir # 复制目录

1.5 mv - 移动或重命名文件或目录

mv old_name new_name  # 重命名文件或目录
mv file /path/to/directory # 移动文件到指定目录

1.6 rm - 删除文件或目录

rm file  # 删除文件
rm -r directory  # 递归删除目录
rm -f file  # 强制删除文件,不提示

1.7 mkdir - 创建目录

mkdir new_directory  # 创建新目录
mkdir -p parent/child  # 创建多级目录

1.8 touch - 创建空文件或更新文件时间戳

touch new_file  # 创建空文件
touch existing_file  # 更新文件时间戳

2. 文件内容查看和编辑

2.1 cat - 查看文件内容

cat file  # 查看文件内容
cat file1 file2 > combined_file  # 合并文件

2.2 moreless - 分页查看文件内容

more file  # 分页查看文件内容
less file  # 更强大的分页查看工具,支持上下滚动

2.3 headtail - 查看文件头部和尾部内容

head -n 10 file  # 查看文件前10行
tail -n 10 file  # 查看文件后10行
tail -f file  # 实时查看文件新增内容

2.4 grep - 文本搜索

grep "pattern" file  # 在文件中搜索指定模式
grep -r "pattern" directory  # 递归搜索目录中的文件
grep -i "pattern" file  # 忽略大小写搜索

2.5 vivim - 文本编辑

vi file  # 使用vi编辑器打开文件
vim file  # 使用vim编辑器打开文件

3. 系统信息查看

3.1 uname - 显示系统信息

uname -a  # 显示所有系统信息
uname -r  # 显示内核版本

3.2 df - 显示磁盘使用情况

df -h  # 以人类可读的格式显示磁盘使用情况

3.3 du - 显示目录或文件的磁盘使用情况

du -sh directory  # 显示目录的总大小
du -ah directory  # 显示目录中每个文件的大小

3.4 free - 显示内存使用情况

free -h  # 以人类可读的格式显示内存使用情况

3.5 top - 实时显示系统进程状态

top  # 实时显示系统进程状态

3.6 ps - 显示当前进程状态

ps aux  # 显示所有进程的详细信息
ps -ef | grep java  # 查找Java进程

4. 网络操作

4.1 ifconfig - 显示和配置网络接口

ifconfig  # 显示所有网络接口信息
ifconfig eth0 up  # 启用eth0网络接口
ifconfig eth0 down  # 禁用eth0网络接口

4.2 netstat - 显示网络连接、路由表、接口统计信息

netstat -tuln  # 显示所有监听端口
netstat -anp | grep :8080  # 查找8080端口的连接

4.3 ping - 测试网络连接

ping google.com  # 测试与google.com的网络连接

4.4 ssh - 远程登录

ssh user@hostname  # 远程登录到指定主机

4.5 scp - 远程复制文件

scp file user@hostname:/path/to/destination  # 复制文件到远程主机
scp user@hostname:/path/to/file /local/destination  # 从远程主机复制文件

5. 监控Java程序

5.1 jps - 列出Java进程

jps  # 列出所有Java进程及其PID

5.2 jstat - 监控JVM统计信息

jstat -gcutil <pid> 1000 10  # 每1秒监控一次JVM垃圾回收情况,共10次
  • -gcutil:显示垃圾回收统计信息
  • <pid>:Java进程ID
  • 1000:监控间隔时间(毫秒)
  • 10:监控次数

5.3 jstack - 生成Java线程快照

jstack <pid> > thread_dump.txt  # 生成Java线程快照并保存到文件
  • <pid>:Java进程ID
  • thread_dump.txt:保存线程快照的文件名

5.4 jmap - 生成Java内存快照

jmap -heap <pid>  # 显示Java堆内存使用情况
jmap -dump:format=b,file=heap_dump.hprof <pid>  # 生成Java堆内存快照
  • -heap:显示堆内存使用情况
  • -dump:format=b,file=heap_dump.hprof:生成堆内存快照并保存到文件

5.5 jconsole - 图形化监控工具

jconsole  # 启动JConsole,连接本地或远程Java进程进行监控

5.6 jvisualvm - 图形化监控和分析工具

jvisualvm  # 启动VisualVM,连接本地或远程Java进程进行监控和分析

6. 其他常用命令

6.1 tar - 打包和解包文件

tar -cvf archive.tar file1 file2  # 打包文件
tar -xvf archive.tar  # 解包文件
tar -czvf archive.tar.gz directory  # 打包并压缩目录
tar -xzvf archive.tar.gz  # 解压并解包文件

6.2 find - 查找文件

find /path/to/search -name "*.log"  # 查找指定目录下的.log文件
find /path/to/search -mtime -7  # 查找最近7天内修改过的文件

6.3 chmod - 修改文件权限

chmod 755 file  # 修改文件权限为755
chmod +x script.sh  # 添加执行权限

6.4 chown - 修改文件所有者

chown user:group file  # 修改文件所有者和组

6.5 cron - 定时任务

crontab -e  # 编辑当前用户的定时任务
crontab -l  # 列出当前用户的定时任务

结论

掌握这些常用的Linux命令可以极大地提高工作效率,特别是在监控和调试Java程序时,这些命令和工具可以帮助你快速定位和解决问题。希望本文的内容能为你在实际工作中提供有价值的参考。

相关文章:

  • 什么是 Ansible Playbook?
  • 如何根据目标网站调整Python爬虫的延迟时间?
  • 2025年渗透测试面试题总结-某 B站-攻防实验室(题目+回答)
  • 循环查询指定服务器开放端口(Python)
  • mysql如何给字段添加默认值?
  • MySQL数据库宕机快速恢复
  • 蓝光三维扫描技术:汽车零部件检测的精准高效之选
  • STL性能优化方法
  • 数据结构栈和队列
  • 开放生态,无限可能:耘想WinNAS 重新定义您的数字生活
  • nlohmann::json教程
  • ElasticSearch快速入门--实现分词搜索
  • docker-compose安装
  • 初始操作系统---Linux
  • 《HarmonyOS Next状态栏动画实现案例与代码解析》
  • 从node:xxx 到模块系统演进:Node.js 的过去、现在与未来的思考
  • vulhub靶场Web-Machine-N7通关攻略
  • Oracle 启用 Sql 跟踪的方式
  • 【Linux】--- 线程互斥
  • 【保姆级】阿里云codeup配置Git的CI/CD步骤
  • 凤阳鼓楼脱落瓦片2023年刚经历修复,凤阳县文旅局长回应是否违建等焦点问题
  • 河北省纪委原副书记、省监委原副主任陈玉祥一审获刑十二年
  • 总书记回信二周年之际,上海如何将垃圾分类深度融入城市发展?
  • 前四月国家铁路发送货物12.99亿吨,同比增长3.6%
  • 私家车跑“顺风”出事故,意外险赔不赔?
  • 纽约市长称墨西哥海军帆船撞桥事故已致2人死亡