Linux常用命令整理

一、文件和目录操作

1. ls
  • 列出目录内容
  • 选项:-l(详细列表)、-a(包括隐藏文件)、-h(以人类可读的格式显示文件大小)
2. cd
  • 改变当前目录
  • 用法:cd 目录名
3. pwd
  • 显示当前工作目录
4. mkdir
  • 创建目录
  • 用法:mkdir 目录名
5. rmdir
  • 删除空目录
  • 用法:rmdir 目录名
6. rm
  • 删除文件或目录
  • 选项:-r(递归删除目录及内容)、-f(强制删除,不提示)
  • 用法:rm 文件名rm -r 目录名
7. cp
  • 复制文件或目录
  • 选项:-r(递归复制目录)、-i(提示是否覆盖目标文件)
  • 用法:cp 源文件 目标位置cp -r 源目录 目标位置
8. mv
  • 移动或重命名文件/目录
  • 用法:mv 源文件/目录 目标位置/新名称
9. touch
  • 创建一个空文件或更新文件的访问和修改时间
  • 用法:touch 文件名
10. cat
  • 显示文件内容
  • 选项:-n(显示行号)
  • 用法:cat 文件名
11. more/less
  • 分页显示文件内容
  • 用法:more 文件名less 文件名
12. head/tail
  • 显示文件的开头/结尾内容
  • 用法:head -n 行数 文件名tail -n 行数 文件名
13. find
  • 在目录树中查找文件
  • 示例:find /home/user -name "*.txt"
14. grep
  • 在文件中搜索文本
  • 示例:grep "text" 文件名
15. ln
  • 创建链接
  • 示例:ln -s 源文件 目标文件(创建软链接)
16. chmod
  • 改变文件或目录的权限
  • 示例:chmod 755 文件名(设置文件权限为rwxr-xr-x)
17. chown
  • 改变文件或目录的所有者和所属组
  • 示例:chown 用户:组 文件名
18. chgrp
  • 改变文件或目录的所属组
  • 示例:chgrp 组 文件名

二、系统管理

19. df
  • 显示磁盘使用情况
  • 选项:-h(以人类可读的格式显示)
20. du
  • 显示目录或文件的磁盘使用情况
  • 选项:-sh(总结指定目录的总大小,以人类可读的格式显示)
  • 用法:du -sh 目录名
21. top/htop
  • 显示系统进程信息(htoptop的增强版)
22. free
  • 显示系统内存使用情况
  • 选项:-h(以人类可读的格式显示)
23. uptime
  • 显示系统运行时间、用户数以及平均负载
24. who/w
  • 显示当前登录系统的用户信息
25. ps
  • 显示当前进程的快照
  • 选项:-ef(显示所有进程的全格式信息)
26. kill
  • 终止进程
  • 用法:kill 进程ID

三、网络管理

27. ifconfig/ip addr
  • 显示或配置网络接口信息(在新版本的Linux中,ifconfig已被ip命令替代)
28. netstat
  • 显示网络连接、路由表、接口统计等网络相关信息
  • 选项:-tuln(显示TCP和UDP监听端口)
29. ping
  • 测试网络连接
  • 用法:ping 主机名/IP地址
30.traceroute/tracert/tracepath
- 显示数据包到达目的地的路径

四、用户和组管理

31. useradd
  • 添加新用户
  • 示例:useradd 用户名
  • 可选参数:-m(创建用户主目录)、-g(指定用户所属组)等
32. userdel
  • 删除用户
  • 示例:userdel 用户名
  • 可选参数:-r(同时删除用户主目录)
33. usermod
  • 修改用户属性
  • 示例:usermod -g 新组名 用户名(修改用户所属组)
34. passwd
  • 设置或修改用户密码
  • 示例:passwd 用户名(修改指定用户的密码)
  • 不带用户名则修改当前用户的密码
35. groupadd
  • 添加新组
  • 示例:groupadd 组名
36. groupdel
  • 删除组
  • 示例:groupdel 组名
37. groups
  • 显示当前用户所属的组
  • 示例:groups(不带参数时显示当前用户所属的组)
38. id
  • 显示用户或组的ID信息
  • 示例:id 用户名(显示指定用户的UID、GID以及所属的用户组)
  • 不带用户名则显示当前用户的ID信息

五、系统信息

39. uname
  • 显示系统信息
  • 示例:uname -a(显示详细的系统信息)
40. hostname
  • 显示或设置系统的主机名
  • 示例:hostname(显示当前主机名)
  • 示例:hostnamectl set-hostname 新主机名(在某些系统中设置新的主机名)
41. dmesg
  • 显示或控制内核环形缓冲区的内容
  • 常常用于查看系统启动时的信息
42. lsb_release
  • 显示Linux标准基准(LSB)和特定发行版的信息
  • 示例:lsb_release -a(显示所有相关信息)
43. lshw
  • 显示硬件信息
  • 示例:lshw -class display(仅显示显示设备的信息)

六、压缩和解压

44. tar
  • 打包和解包文件
  • 示例:tar -czvf 归档名.tar.gz 源文件/目录(打包并压缩)
  • 示例:tar -xzvf 归档名.tar.gz(解压缩并解包)
45. gzip/gunzip
  • 压缩/解压缩文件
  • 示例:gzip 文件名(压缩文件)
  • 示例:gunzip 文件名.gz(解压缩文件)
46. bzip2/bunzip2
  • 另一种压缩/解压缩工具,通常比gzip提供更好的压缩率
  • 示例:bzip2 文件名(压缩文件)
  • 示例:bunzip2 文件名.bz2(解压缩文件)

七、其他常用命令

47. man
  • 显示命令的手册页
  • 示例:man ls(显示ls命令的手册页)
48. whatis
  • 显示命令的简短描述(基于man数据库)
  • 示例:whatis ls(显示ls命令的简短描述)
49. alias
  • 为命令设置别名
  • 示例:alias ll='ls -l'(设置llls -l的别名)
50. history
  • 显示历史命令列表
  • 示例:history(不带参数时显示历史命令列表)
  • 可通过!命令编号来执行历史命令列表中的某条命令

八、软件包管理(以Debian/Ubuntu为例)

51. apt-get
  • Debian和Ubuntu系统的软件包管理工具
  • 示例:apt-get update(更新本地软件包列表)
  • 示例:apt-get install 软件包名(安装软件包)
  • 示例:apt-get remove 软件包名(卸载软件包)
52. dpkg
  • Debian系统的底层软件包管理工具

  • 示例:dpkg -l(列出已安装的软件包)

  • 示例:dpkg -r 软件包名(卸载软件包,但不处理配置文件)

  • 示例:dpkg -P 软件包名(卸载软件包并删除配置文件)

九、软件包管理(以Red Hat/CentOS为例)

53. yum(或dnf在较新版本中)
  • Red Hat和CentOS系统的软件包管理工具
  • 示例:yum update(更新本地软件包列表和系统软件包)
  • 示例:yum install 软件包名(安装软件包)
  • 示例:yum remove 软件包名(卸载软件包)
54. rpm
  • Red Hat系统的底层软件包管理工具
  • 示例:rpm -i 软件包.rpm(安装.rpm软件包)
  • 示例:rpm -qa(列出已安装的软件包)
  • 示例:rpm -e 软件包名(卸载软件包)

十、文本处理

55. echo
  • 显示一行文本或将文本重定向到文件
  • 示例:echo "Hello, World!"(在终端显示文本)
  • 示例:echo "Hello, World!" > 文件名(将文本写入文件)
56. cut
  • 从文件的每一行中截取指定的部分
  • 示例:cut -d: -f1 /etc/passwd(从/etc/passwd文件中以冒号为分隔符截取第一列)
57. sort
  • 对文本文件进行排序
  • 示例:sort 文件名(对文件进行排序)
  • 可选参数:-r(逆序排序)、-n(按数字排序)等
58. uniq
  • 报告或忽略文件中的重复行
  • 示例:uniq 文件名(显示文件中的唯一行)
  • 可选参数:-c(在每行前加上该行出现的次数
59. awk
  • 文本处理工具,用于模式扫描和文本/数据提取
  • 示例:awk '{print $1}' 文件名(打印文件的第一列)
60. sed
  • 流编辑器,用于对输入流(文件或管道)进行基本的文本转换
  • 示例:sed 's/old/new/g' 文件名(将文件中的"old"替换为"new")

十一、进程和服务管理

61. systemctl
  • 控制systemd系统和服务管理器
  • 示例:systemctl start 服务名(启动服务)
  • 示例:systemctl stop 服务名(停止服务)
  • 示例:systemctl status 服务名(查看服务状态)
  • 示例:systemctl enable 服务名(设置服务开机自启)
  • 示例:systemctl disable 服务名(禁止服务开机自启)
62. init.drc.d 脚本
  • 传统Linux系统中的初始化和服务管理脚本目录
  • 通常用于通过/etc/init.d/服务名 start/etc/init.d/服务名 stop来管理服务
63. croncrontab
  • Debian系统的底层软件包管理工具

  • 示例:dpkg -i 软件包.deb

    安装.deb软件包)

  • 示例:dpkg -l(列出已安装的软件包)

  • 示例:dpkg -r 软件包名(卸载软件包,但不处理配置文件)

  • 示例:dpkg -P 软件包名(卸载软件包并删除配置文件)

  • Red Hat和CentOS系统的软件包管理工具

  • 示例:yum update(更新本地软件包列表和系统软件包)

  • 示例:yum install 软件包名(安装软件包)

  • 示例:yum remove 软件包名(卸载软件包)

  • Red Hat系统的底层软件包管理工具

  • 示例:rpm -i 软件包.rpm(安装.rpm软件包)

  • 示例:rpm -qa(列出已安装的软件包)

  • 示例:rpm -e 软件包名(卸载软件包)

  • 显示一行文本或将文本重定向到文件

  • 示例:echo "Hello, World!"(在终端显示文本)

  • 示例:echo "Hello, World!" > 文件名(将文本写入文件)

  • 从文件的每一行中截取指定的部分

  • 示例:cut -d: -f1 /etc/passwd(从/etc/passwd文件中以冒号为分隔符截取第一列)

  • 对文本文件进行排序

  • 示例:sort 文件名(对文件进行排序)

  • 可选参数:-r(逆序排序)、-n(按数字排序)等

  • 报告或忽略文件中的重复行

  • 示例:uniq 文件名(显示文件中的唯一行)

  • 可选参数:-c(在每行前加上该行出现的次数)

  • 文本处理工具,用于模式扫描和文本/数据提取

  • 示例:awk '{print $1}' 文件名(打印文件的第一列)

  • 流编辑器,用于对输入流(文件或管道)进行基本的文本转换

  • 示例:sed 's/old/new/g' 文件名(将文件中的"old"替换为"new")

  • 控制systemd系统和服务管理器

  • 示例:systemctl start 服务名(启动服务)

  • 示例:systemctl stop 服务名(停止服务)

  • 示例:systemctl status 服务名(查看服务状态)

  • 示例:systemctl enable 服务名(设置服务开机自启)

  • 示例:systemctl disable 服务名(禁止服务开机自启)

  • 传统Linux系统中的初始化和服务管理脚本目录

  • 通常用于通过/etc/init.d/服务名 start/etc/init.d/服务名 stop来管理服务

  • 用于定时执行任务的服务和工具

  • crontab -e 用于编辑当前用户的cron任务

  • crontab -l 用于列出当前用户的cron任务

相关推荐
dntktop26 分钟前
解锁自动化新高度,zTasker v2.0全方位提升效率
运维·windows
我曾经是个程序员28 分钟前
C#Directory类文件夹基本操作大全
服务器·开发语言·c#
花姐夫Jun1 小时前
在 CentOS 8 系统上安装 Jenkins 的全过程
linux·centos·jenkins
运维&陈同学1 小时前
【Beats01】企业级日志分析系统ELK之Metricbeat与Heartbeat 监控
运维·elk·elasticsearch·云原生·kibana·heartbeat·metricbeat
地球资源数据云1 小时前
全国30米分辨率逐年植被覆盖度(FVC)数据集
大数据·运维·服务器·数据库·均值算法
是店小二呀1 小时前
【Linux】Linux开发利器:make与Makefile自动化构建详解
linux·运维·自动化
baihb10242 小时前
Jenkins 构建流水线
运维·jenkins
BUG 4042 小时前
LINUX--shell
linux·运维·服务器
菜鸟小白:长岛icetea2 小时前
Linux零基础速成篇一(理论+实操)
linux·运维·服务器
深海的鲸同学 luvi2 小时前
【HarmonyOS NEXT】hdc环境变量配置
linux·windows·harmonyos