linux 常用的命令

一、文件和目录操作

  1. ls:列出目录内容。
  2. cd:切换当前工作目录。
  3. pwd:显示当前工作目录的绝对路径。
  4. mkdir:创建新目录。
  5. rmdir:删除空目录。
  6. rm:删除文件或目录(使用-r选项递归删除目录)。
  7. cp:复制文件或目录。
  8. mv:移动或重命名文件或目录。
  9. touch:创建空文件或修改文件时间戳。
  10. find:在目录树中搜索文件,并执行指定的操作。

二、文本查看和处理

  1. cat:查看文件内容,并可以将多个文件内容合并后输出。
  2. more:分页显示文件内容。
  3. less:与more类似,但支持向前和向后翻页。
  4. head:显示文件的开头部分。
  5. tail:显示文件的末尾部分,常用于查看日志文件。
  6. grep:在文件中搜索符合模式的字符串。
  7. sed:流编辑器,用于对文本进行过滤和转换。
  8. awk:强大的文本分析工具,用于处理和分析文本数据。

三、系统管理和监控

  1. ps:显示当前进程的快照。
  2. top:实时显示系统中各个进程的资源占用情况。
  3. htop:top的增强版,提供了更丰富的界面和更多的功能。
  4. kill:发送信号到进程,通常用于终止进程。
  5. free:显示系统的内存使用情况。
  6. df:显示磁盘空间的使用情况。
  7. du:显示目录或文件的磁盘使用情况。
  8. uptime:显示系统运行时间及负载。
  9. dmesg:显示或控制内核环形缓冲区的消息。

四、网络配置和监控

  1. ifconfig (或ip addr):查看和配置网络接口。
  2. ping:测试主机之间的网络连通性。
  3. netstat:显示网络连接、路由表、接口统计等信息(注意:在某些新版本的Linux中,netstat可能被ss命令取代)。
  4. ss:用于显示套接字统计信息,可以看作是netstat的现代替代品。
  5. scp:安全地复制文件或目录到远程主机或从远程主机复制文件或目录。
  6. ssh:安全地登录到远程主机并执行命令。

五、压缩和解压

  1. tar:打包和解包文件。
  2. gzip:压缩或解压缩文件。
  3. bzip2:另一种压缩工具,压缩率高于gzip。
  4. zip/unzip:用于压缩和解压ZIP格式的文件。

六、用户管理

  1. useradd:添加新用户。
  2. usermod:修改用户账户。
  3. userdel:删除用户账户。
  4. passwd:更改用户密码。
  5. groups:显示用户所属的组。
  6. groupadd:添加新组。
  7. groupdel:删除组。

七、系统启动和关闭

  1. reboot:重启系统。
  2. shutdown:关闭系统。

八、其他常用命令

  1. echo:在终端输出字符串或变量。
  2. man:查看命令的手册页。
  3. history:查看命令历史记录。
  4. chmod:更改文件或目录的权限。
  5. chown:更改文件或目录的所有者和所属组。

查找特定文件:find / -name "file_name"

打开指定目录:cd /path/to/directory

列出当前目录下的内容:ls

设置环境变量:export VARIABLE_NAME=value

显示网络接口:ifconfig

显示内存使用情况:free -m

显示磁盘使用情况:df -h

添加新用户:adduser username

查看系统日志:tail /var/log/syslog

显示当前登录用户:whoami

关闭防火墙:systemctl stop firewalld

升级系统软件包:yum update

启动特定服务:systemctl start service_name

停止特定服务:systemctl stop service_name

重启计算机:reboot

关机:shutdown now

列出正在运行的进程:ps -ef

杀死进程:kill process_id

重命名文件或目录:mv old_name new_name

复制文件或目录:cp source_file destination

删除文件或目录:rm file_name

使用 tar 打包文件:tar -czvf archive_name.tar.gz directory_to_archive

解压 tar 文件:tar -xzvf archive_name.tar.gz

显示文件内容:cat file_name

查找特定字符串:grep "string_to_search" file_name

通过 SSH 连接到远程主机:ssh username@remote_host

显示当前日期:date

显示当前时间戳:date +%s

显示当前工作目录:pwd

显示命令历史记录:history

添加新的系统用户组:groupadd group_name

查看用户组信息:id group_name

切换到 root 用户:su - root

显示 CPU 信息:cat /proc/cpuinfo

显示内存信息:cat /proc/meminfo

显示磁盘分区信息:fdisk -l

显示网卡信息:lspci -v

显示 USB 设备列表:lsusb

挂载 CD-ROM:mount /dev/cdrom /mnt

卸载 CD-ROM:umount /dev/cdrom

显示所有本地 IP 地址:hostname -I

更改文件权限:chmod permissions file_name

更改文件拥有者:chown owner_name file_name

更改文件所属组:chgrp group_name file_name

显示当前打开的文件:lsof

显示系统负载:uptime

显示系统版本和发行版:cat /etc/*release

显示当前网络连接:netstat

显示当前系统信息:uname -a

显示磁盘 IO 统计信息:iostat

显示系统日志:dmesg

显示当前用户所属组:groups

显示指定目录下的文件数目:ls -l | grep "^-" | wc -l

显示指定目录下的子目录数目:ls -l | grep "^d" | wc -l

列出所有系统服务:systemctl list-unit-files --type=service

列出所有网络接口:ip link show

显示当前占用端口的进程:lsof -i :port_number

显示进程的内存使用情况:ps aux | awk '{print 4"\\t"11}' | sort | uniq -c | awk '{print 2" "1" "$3}' | sort -n

检查主机名是否可解析:nslookup host_name

将指定目录下的所有文件和子目录复制到另一个目录:cp -r source_directory destination_directory

查找最大的文件:find / -type f -size +100M -exec ls -lh {} \; | awk '{ print NF ": " 5 }' | sort -h -k 2,2 -r | head -n 5

显示当前进程树:pstree

显示当前登录用户的环境变量:printenv

设置别名:alias new_command='original_command'

查看 IP 地址相关信息:ip addr show

显示操作系统架构信息:uname -m

显示当前网络状态:ss

显示所有已安装的软件包列表:rpm -qa

显示当前登录用户的 UID 信息:id

显示当前用户所在地理位置:curl http://ipinfo.io/ip

显示所有已安装的 Python 模块:pip list

列出指定目录下的文件夹的大小:du -sh dir_name/*

显示当前系统中所有正在运行的服务:systemctl list-units --type=service

显示指定端口被哪个进程占用:lsof -i :port_number

显示当前系统负载和内存使用情况:top

查看磁盘空间使用情况:du -sh directory_path

显示当前登录用户的 shell:echo $SHELL

显示 CPU 温度信息:sensors

查找指定目录下最新修改的文件:ls -alrt directory_path | tail -1

在指定目录下查找包含特定字符串的文件:grep -rnw 'directory_path' -e 'search_string'

显示当前用户所在的组列表:id -Gn

显示当前系统中所有活动的网络连接:netstat -a

显示当前系统的 DNS 配置:cat /etc/resolv.conf

显示当前打开的 TCP 句柄列表:ss -t

显示当前打开的 UDP 句柄列表:ss -u

列出所有已安装的 Perl 模块:perl -e 'foreach (@INC) { print "_\\n"; }' \| xargs ls \| grep .pm \| sed 's/\\.pm//'

显示系统中所有的 cron 作业:crontab -l

显示系统中所有安装的 Python 版本:ls /usr/bin/python*

显示指定目录下最大的若干个文件:ls -S directory_path | head -n 5

执行命令并将结果保存到文件中:command_name > output_file.txt

显示当前系统中所有活跃的 TCP 连接:netstat -at

显示当前系统中所有活跃的 UDP 连接:netstat -au

显示当前系统中所有活跃的网络连接:netstat -an

显示当前系统中活跃的 UNIX 连接:netstat -ax

显示当前系统中所有已安装的 PHP 模块:php -m | sort

列出当前目录下的所有文件和子目录:ls -R

显示当前系统中所有活跃的 HTTP 连接:netstat -apn | grep :80 | grep ESTABLISHED

显示当前系统中所有活跃的 HTTPS 连接:netstat -apn | grep :443 | grep ESTABLISHED

显示当前系统中所有活跃的 SSH 连接:netstat -apn | grep :22 | grep ESTABLISHED

查找指定文件的位置:which file_name

相关推荐
ServBay43 分钟前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954483 小时前
CTF 伪协议
php
Johny_Zhao18 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
YuMiao1 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
BingoGo2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
深紫色的三北六号3 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移