Linux 是一个广泛使用的操作系统,提供了丰富的命令行工具来管理系统、文件、网络等。以下是一些常用的 Linux 命令及其简要说明:
1. 文件和目录操作
- ls: 列出目录内容。
ls -l # 详细列表
ls -a # 显示隐藏文件
- cd: 切换目录。
cd /path/to/directory # 切换到指定目录
cd .. # 返回上一级目录
- pwd: 显示当前工作目录。
pwd
- mkdir: 创建目录。
mkdir new_directory
- rmdir: 删除空目录。
rmdir empty_directory
- rm: 删除文件或目录。
rm file.txt # 删除文件
rm -r directory # 递归删除目录
- cp: 复制文件或目录。
cp file.txt /path/to/destination # 复制文件
cp -r directory /path/to/destination # 复制目录
- mv: 移动或重命名文件或目录。
mv file.txt /path/to/destination # 移动文件
mv old_name.txt new_name.txt # 重命名文件
- touch: 创建空文件或更新文件时间戳。
touch new_file.txt
- cat: 查看文件内容。
cat file.txt
- more / less: 分页查看文件内容。
more file.txt
less file.txt
- head / tail: 查看文件的开头或结尾部分。
head -n 10 file.txt # 查看前10行
tail -n 10 file.txt # 查看最后10行
tail -f file.txt # 实时查看文件更新
2. 文件权限和所有权
- chmod: 修改文件权限。
chmod 755 file.txt # 设置文件权限为 rwxr-xr-x
chmod +x script.sh # 添加可执行权限
- chown: 修改文件所有者。
chown user:group file.txt # 修改文件所有者和组
- chgrp: 修改文件所属组。
chgrp group_name file.txt
3. 系统信息
- uname: 显示系统信息。
uname -a # 显示所有系统信息
- df: 显示磁盘使用情况。
df -h # 以易读格式显示磁盘使用情况
- du: 显示目录或文件的磁盘使用情况。
du -sh /path/to/directory # 显示目录的总大小
- top / htop: 显示系统进程和资源使用情况。
top
htop
- ps: 显示当前进程状态。
ps aux # 显示所有进程
- free: 显示内存使用情况。
free -h # 以易读格式显示内存使用情况
4. 网络操作
- ping: 测试网络连接。
ping google.com
- ifconfig / ip: 显示和配置网络接口。
ifconfig
ip addr show
- netstat: 显示网络连接、路由表、接口统计信息等。
netstat -tuln # 显示监听的端口
- ssh: 远程登录到另一台计算机。
ssh user@hostname
- scp: 在本地和远程主机之间复制文件。
scp file.txt user@hostname:/path/to/destination # 复制到远程主机
scp user@hostname:/path/to/file.txt /local/destination # 从远程主机复制
- wget / curl: 下载文件。
wget http://example.com/file.txt
curl -O http://example.com/file.txt
5. 包管理
- apt (Debian/Ubuntu): 包管理工具。
apt update # 更新包列表
apt install package_name # 安装包
apt remove package_name # 删除包
- yum (CentOS/RHEL): 包管理工具。
yum install package_name # 安装包
yum remove package_name # 删除包
- dnf (Fedora): 包管理工具。
dnf install package_name # 安装包
dnf remove package_name # 删除包
6. 压缩和解压缩
- tar: 打包和解包文件。
tar -cvf archive.tar /path/to/directory # 打包目录
tar -xvf archive.tar # 解包
tar -czvf archive.tar.gz /path/to/directory # 打包并压缩
tar -xzvf archive.tar.gz # 解压缩
- gzip / gunzip: 压缩和解压缩文件。
gzip file.txt # 压缩文件
gunzip file.txt.gz # 解压缩文件
- zip / unzip: 压缩和解压缩文件。
zip archive.zip file.txt # 压缩文件
unzip archive.zip # 解压缩文件
7. 文本处理
- grep: 搜索文本。
grep "pattern" file.txt # 在文件中搜索模式
- sed: 流编辑器,用于文本替换、删除等操作。
sed 's/old/new/' file.txt # 替换文本
- awk: 文本处理工具,用于模式扫描和处理。
awk '{print $1}' file.txt # 打印每行的第一个字段
- sort: 排序文本。
sort file.txt # 排序文件内容
- uniq: 去除重复行。
uniq file.txt # 去除重复行
- cut: 提取文件的某一部分。
cut -d',' -f1 file.csv # 提取逗号分隔文件的第一列
8. 用户和组管理
- useradd / userdel: 添加或删除用户。
useradd new_user # 添加用户
userdel old_user # 删除用户
- passwd: 修改用户密码。
passwd username # 修改用户密码
- groupadd / groupdel: 添加或删除组。
groupadd new_group # 添加组
groupdel old_group # 删除组
9. 进程管理
- kill: 终止进程。
kill PID # 终止指定PID的进程
kill -9 PID # 强制终止进程
- killall: 终止所有同名进程。
killall process_name
- bg / fg: 将进程放到后台或前台运行。
bg # 将暂停的进程放到后台
fg # 将后台进程放到前台
- jobs: 显示当前 shell 中的后台任务。
jobs
10. 其他常用命令
- history: 显示命令历史。
history
- man: 查看命令的手册页。
man ls # 查看 ls 命令的手册页
- alias: 创建命令别名。
alias ll='ls -la' # 创建别名
- echo: 输出文本。
echo "Hello, World!"
- date: 显示或设置系统日期和时间。
date # 显示当前日期和时间
- shutdown: 关闭或重启系统。
shutdown -h now # 立即关机
shutdown -r now # 立即重启
这些命令只是 Linux 命令中的一小部分,Linux 提供了大量的工具和命令来满足各种需求。你可以通过 man 命令查看每个命令的详细用法和选项。