Linux 常用命令大全

Linux 是一个非常强大的操作系统,了解常用的 Linux 命令能极大地提高你的效率。以下是常见的 Linux 命令和它们的基本用法,涵盖文件操作、系统管理、网络操作等常见任务。


1. 文件与目录操作

ls — 列出目录内容

ls           # 列出当前目录下的文件
ls -l        # 列出详细信息(权限、所有者、大小等)
ls -a        # 显示所有文件(包括隐藏文件)
ls -lh       # 显示文件大小,自动换算为人类可读的格式(KB, MB)
ls -R        # 递归显示目录及其子目录的内容

cd — 改变目录

cd /path/to/directory  # 进入指定目录
cd ~                   # 进入当前用户的主目录
cd ..                  # 返回上级目录
cd -                   # 返回上一个目录

pwd — 显示当前路径

pwd       # 显示当前工作目录

mkdir — 创建目录

mkdir dirname      # 创建一个目录
mkdir -p path     # 创建父目录(如果不存在的话)

rmdir — 删除空目录

rmdir dirname    # 删除一个空目录

rm — 删除文件或目录

rm filename      # 删除文件
rm -r dirname    # 删除目录及其内容
rm -rf dirname   # 强制删除目录及其中的所有内容(谨慎使用)

cp — 复制文件或目录

cp source destination   # 复制文件
cp -r source destination # 复制目录

mv — 移动文件或重命名文件

mv source destination  # 移动文件或目录
mv oldname newname     # 重命名文件

touch — 创建空文件或修改文件时间戳

touch filename    # 创建空文件,或者更新文件的修改时间

find — 查找文件

find /path -name filename   # 在指定路径查找文件
find /path -type f          # 查找普通文件
find /path -type d          # 查找目录

locate — 查找文件(依赖数据库)

locate filename    # 查找文件(需要先更新数据库:`updatedb`)


2. 文件权限管理

chmod — 改变文件权限

chmod 755 filename  # 设置文件的权限为 rwxr-xr-x
chmod +x filename  # 添加可执行权限
chmod -x filename  # 移除可执行权限

chown — 改变文件拥有者

chown user:group filename    # 改变文件的所有者和所属组

chgrp — 改变文件所属组

chgrp group filename    # 改变文件的所属组

umask — 设置文件创建时的默认权限

umask            # 显示当前的 umask 设置
umask 022        # 设置文件创建时的权限为 755(普通用户可读可写,其他用户只读)


3. 文本操作

cat — 查看文件内容

cat filename        # 显示文件内容
cat file1 file2     # 拼接多个文件
cat > filename      # 将输入重定向到文件,按 Ctrl+D 结束

less — 分页查看文件

less filename       # 按页显示文件内容,使用方向键上下翻页,按 Q 退出

more — 另一种分页查看文件的方式

more filename       # 按页显示文件内容,使用空格键翻页,按 Q 退出

head — 查看文件的前几行

head filename       # 默认显示前 10 行
head -n 20 filename # 显示文件的前 20 行

tail — 查看文件的后几行

tail filename       # 默认显示文件的后 10 行
tail -n 20 filename # 显示文件的后 20 行
tail -f filename    # 实时跟踪文件的变化(例如查看日志文件)

grep — 在文件中查找匹配的字符串

grep 'pattern' filename  # 在文件中查找匹配的内容
grep -r 'pattern' dir    # 在目录中递归查找
grep -i 'pattern' filename  # 不区分大小写

awk — 文本处理工具

awk '{print $1, $3}' filename  # 打印每行的第 1 列和第 3 列

sed — 文本替换

sed 's/old_text/new_text/g' filename  # 将文件中的 old_text 替换为 new_text

cut — 按列切割文本

cut -d ' ' -f 1 filename    # 以空格为分隔符,提取第 1 列


4. 系统管理

top — 查看系统运行状态

top               # 显示系统的进程、CPU、内存等信息

ps — 显示进程信息

ps aux            # 显示所有进程的详细信息
ps -ef            # 显示所有进程的完整格式

kill — 结束进程

kill pid          # 结束指定 PID 的进程
kill -9 pid       # 强制结束进程

df — 查看磁盘空间

df               # 查看文件系统磁盘空间
df -h            # 以人类可读的方式显示磁盘空间(例如 MB, GB)

du — 查看文件或目录的磁盘使用情况

du filename      # 显示文件的磁盘使用情况
du -sh *         # 显示当前目录下每个文件或目录的大小,并以易读格式显示

free — 查看内存使用情况

free -h          # 显示内存使用情况

uptime — 查看系统运行时间

uptime           # 查看系统运行时间、负载等信息

hostname — 查看或设置主机名

hostname         # 显示当前主机名
hostname newname # 设置新的主机名


5. 网络操作

ping — 检查网络连接

ping google.com  # 检查与 google.com 的网络连接
ping -c 4 google.com  # 只发送 4 次请求

ifconfig — 查看网络接口配置

ifconfig          # 显示所有网络接口的信息

ip — 查看或配置网络接口

ip addr show      # 显示网络接口的 IP 地址
ip link set eth0 up   # 启动 eth0 接口

netstat — 查看网络连接和状态

netstat -tuln     # 显示监听端口
netstat -an       # 显示所有连接的 IP 和端口

ss — 查看网络连接(替代 netstat)

ss -tuln         # 显示监听的端口

wget — 下载文件

wget http://example.com/file.zip  # 从指定 URL 下载文件

curl — 获取网络数据

curl http://example.com   # 获取网页内容
curl -O http://example.com/file.zip   # 下载文件


6. 文件压缩与解压

tar — 打包和解压缩文件

tar -cvf archive.tar filename     # 创建 tar 包
tar -xvf archive.tar              # 解压 tar 包
tar -czvf archive.tar.gz filename # 创建 tar.gz 包
tar -xzvf archive.tar.gz          # 解压 tar.gz 包

gzip — 压缩文件

gzip filename      # 压缩文件
gunzip filename.gz # 解压文件

zip 和 unzip — 压缩与解压缩 ZIP 文件

zip archive.zip file1 file2   # 压缩文件
unzip archive.zip             # 解压 ZIP 文件


总结

这是 Linux 中常用的命令集,覆盖了文件管理、系统管理、网络操作、文本处理等常

见操作。掌握这些命令能够帮助你高效地使用 Linux 系统,提高生产力。