常用Linux命令

本文详细介绍了Linux系统中各种关键命令的使用,涵盖了文件和目录操作、权限管理、网络连接、系统信息查看、服务管理、软件部署、编辑文件以及top命令的深入解析,为开发者提供了全面的系统操作指南。
摘要由CSDN通过智能技术生成

概要

作为程序员,对于Linux命令需要有一定的掌握,最起码万一部署在服务器上,咱们能知道怎么操作:

Linux命令汇总

一、文件和目录操作

  • ls: 列出文件和目录

例:ls -lah 查看当前目录下的所有文件和目录,包括隐藏文件,并显示详细信息。

  • cd: 切换目录

例:cd /var/log 进入日志目录。

  • mkdir: 创建目录

例:mkdir /home/user/newdir 在指定路径创建一个新目录。

  • rm: 删除文件或目录

例:rm -rf /tmp/oldfiles 删除/tmp/oldfiles目录及其内容。

  • cp: 复制文件或目录

例:cp source.file destination.file 将source.file复制到destination.file。

  • mv: 移动或重命名文件或目录

例:mv oldname newname 将oldname重命名为newname。

  • touch: 创建空文件或更改文件的时间戳。

例:touch newfile.txt 创建一个新的空文件newfile.txt。

  • cat: 查看文件内容。

例:cat myfile.txt 查看myfile.txt的内容。

  • tail: 跟踪文件的最后几行。

例:tail -f /var/log/syslog 实时跟踪查看系统日志文件。

  • head: 查看文件的开头几行。

例:head -n 10 filename 查看文件的前10行。

  • find: 查找文件。

例:find / -name myfile.txt 在根目录下查找名为myfile.txt的文件。

  • grep: 文本搜索。

例:grep -r “searchtext” /path/to/dir 在指定目录下递归搜索含有"searchtext"的文件。

二、权限和所有权

  • chmod: 更改文件权限。

例:chmod 755 script.sh 设置script.sh为755权限。

  • chown: 更改文件所有者和组。

例:chown user:group filename 将filename的所有者和组更改为user和group。

三、网络和连接

  • ping: 测试网络连接。

例:ping google.com 测试到google.com的网络连接。

  • telnet: 测试TCP连接。

例:telnet localhost 8080 测试本地8080端口的TCP连接。

  • wget 或 curl: 从网络上下载文件。

例:wget http://example.com/file.zip 下载file.zip到本地。

  • netstat: 显示网络连接和端口。

例:netstat -tulpen 显示所有的端口和正在使用它们的应用。

  • ssh: 安全地连接到远程服务器。

例:ssh user@remotehost 使用ssh登录到远程主机。

四、查看系统信息

  • uname: 显示系统信息。

例:uname -a 查看所有系统信息。

  • top 或 htop: 查看实时系统性能指标

  • df: 显示磁盘空间使用情况

例:df -h 以可读格式显示所有的磁盘空间使用情况。

  • du: 查看特定目录的磁盘使用。

例:du -sh /var/log 显示/var/log文件夹的总磁盘使用。

  • free: 显示内存使用情况。

例:free -m 以MB为单位显示内存使用情况。

  • ps: 显示当前运行的进程。

例:ps aux 显示所有运行的进程。

  • kill/pkill/killall: 发送信号到进程以终止进程。

例:kill -9 PID 发送SIGKILL到对应PID的进程。

五、系统管理

  • useradd/userdel: 添加或删除用户。

例:useradd newuser 添加新用户newuser。

  • groupadd/groupdel: 添加或删除组

  • passwd: 更改用户密码。

例:passwd username 更改指定用户名的密码。

  • crontab: 设置定时任务。

例:crontab -e 编辑当前用户的crontab文件。

六、包和服务管理

  • 对于Debian/Ubuntu系统,使用apt或apt-get。

例:apt-get install nginx 安装nginx。

  • 对于Red Hat/CentOS系统,使用yum。

例:yum install httpd 安装httpd(Apache)。

  • systemctl: 管理systemd服务。

例:systemctl status nginx 查看nginx服务的状态。

七、软件部署和运行

  • scp: 安全地复制文件到远程主机。

例:scp myapp.jar user@server:/path/to/destination 复制myapp.jar到远程服务器指定目录。

  • java: 运行Java应用程序。

例:java -jar myapp.jar 运行Java应用程序。

  • maven (mvn): 构建和管理Java项目。

例:mvn clean install 清理并构建Maven项目。

  • nohup: 在退出shell/session后继续运行命令。

例:nohup java -jar /path/to/app.jar & 在后台以nohup方式启动Java应用。

八、编辑文件

  • vim/nano/emacs: 文本编辑器。

例:vim /path/to/configfile 使用vim编辑配置文件。

小结

这玩意没啥可总结的就是1+1等于2的事情,懂了就用的方便点,不常用时间一长就忘了,没啥

其实主要是:
1、查询日志命令,这里有很多种变形需要注意
2、查询服务进程
3、查询服务器指标:如CPU利用率啥的

补充 top:

1、时间行:

  • 当前时间。
  • 系统开机运行时间。
  • 当前登录的用户数。
  • 系统负载均值,分别对应过去1分钟、5分钟和15分钟的负载数据。

2、任务行:

  • 总进程数。
  • 正在运行的进程数。
  • 处于睡眠状态的进程数。
  • 停止的进程数。
  • 僵尸进程数。

3、CPU行:

  • 用户态使用的CPU百分比(us) — 执行用户进程的时间比例。
  • 系统态使用的CPU百分比(sy) — 内核程序执行的时间比例。
  • 优先权调整值nice为正的进程占用的CPU百分比(ni)。
  • 空闲的CPU百分比(id) — 未被任何进程使用的时间比例。
  • 等待I/O的CPU时间百分比(wa)。
  • 硬件中断的CPU时间百分比(hi)。
  • 软件中断的CPU时间百分比(si)。
  • 虚拟化控制下其他操作系统占用的CPU时间(st,仅在虚拟化环境中出现)。

4、内存行:

  • 系统的总内存(total)。
  • 系统中未使用的内存(free)。
  • 当前已用的内存(used)。
  • 用作缓存的内存和被系统缓冲的内存(buff/cache)。

5、交换行:

  • 总交换空间。
  • 未使用的交换空间。
  • 已用的交换空间。
  • 可用内存,考虑了缓存和交换的情况。

各进程详细信息:

默认情况下显示以下列:

  • PID:进程标识号,用于唯一标识系统中的进程。
  • USER:运行该进程的用户。
  • PR:进程优先级。
  • NI:nice值,表示进程的优先级。值越小优先级越高。
  • VIRT:虚拟内存的使用量,包括进程使用的所有内存,包括物理内存、交换空间和尚未加载到内存的部分。
  • RES:常驻内存集的大小,进程当前占用的实际物理内存。
  • SHR:共享内存的大小,多个进程可能会共享相同的内存区。
  • S:进程的状态(如 R 表示运行,S 表示睡眠等)。
  • %CPU:进程自上次更新以来占用的CPU百分比。
  • %MEM:进程占用的物理内存的百分比。
  • TIME+:自进程开始以来占用的总CPU时间。
  • COMMAND:启动该进程的命令或程序名。

通过top命令,你可以收集应用和系统的性能数据,比如:

  • 哪些进程占用最多CPU和内存资源,可能表明它们是性能瓶颈或不正常的资源消耗。
  • 系统是否有足够的内存,或者是否需要增加更多的内存。
  • 系统负载是否异常高,可能影响程序响应时间。

此外,你还可以通过交互命令实时操作top,比如:

  • 按P来按CPU使用率排序。
  • 按M来按内存使用率排序。
  • 按1来查看各CPU核心的使用情况。

这些信息可以帮助Java开发专家调优应用程序,追踪性能问题,以及确保系统资源得到合理分配。

  • 22
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值