附录I Linux命令一览
以下是一些常用的 Shell 命令大全,涵盖了基本的文件操作、文本处理、进程管理、网络配置、系统管理等方面的命令,帮助你提高工作效率。
1.文件操作
1)文件和目录操作
ls:列出目录内容
ls -l # 显示详细信息
ls -a # 显示包括隐藏文件的所有文件
ls -lh # 显示人类可读的文件大小
2)cd:切换目录
cd /path/to/dir # 切换到指定目录
cd ~ # 切换到用户主目录
cd .. # 返回上级目录
3)pwd:显示当前工作目录
pwd
4)cp:复制文件或目录
cp file1.txt file2.txt # 复制文件
cp -r dir1/ dir2/ # 复制目录
5)mv:移动文件或重命名
mv oldname.txt newname.txt # 重命名文件
mv file.txt /path/to/dir/ # 移动文件
6)rm:删除文件或目录
rm file.txt # 删除文件
rm -r dir/ # 删除目录及其内容
rm -f file.txt # 强制删除
7)mkdir:创建目录
mkdir newdir # 创建单个目录
mkdir -p /path/to/dir # 创建多级目录
8)rmdir:删除空目录
rmdir dir/ # 删除空目录
2.文件内容查看与编辑
1)cat:查看文件内容
cat file.txt
2)more:分页显示文件内容
more file.txt
3)less:分页显示文件内容(支持向前翻页)
less file.txt
4)head:查看文件的前几行
head -n 10 file.txt # 查看前10行
5)tail:查看文件的后几行
tail -n 10 file.txt # 查看最后10行
tail -f file.txt # 实时查看文件的更新
6)grep:搜索文件中的模式
grep "pattern" file.txt # 查找匹配的内容
grep -i "pattern" file.txt # 不区分大小写查找
grep -r "pattern" /path # 递归查找目录中的文件
7)sed:流编辑器,用于处理文本
sed 's/old/new/g' file.txt # 替换文本中的旧内容为新内容
sed -i 's/old/new/g' file.txt # 直接修改文件
8)awk:文本处理工具,按列处理文本
awk '{print $1}' file.txt # 打印文件的第一列
awk -F ":" '{print 1, 3}' file.txt # 使用":"分隔符处理
9)cut:从文件中提取列
cut -d "," -f 1 file.csv # 提取逗号分隔的第一列
10)sort:排序文件内容
sort file.txt # 按字母顺序排序
sort -n file.txt # 按数字排序
3.文件权限与所有者管理
1)chmod:修改文件权限
chmod 755 file.txt # 设置权限为rwxr-xr-x
chmod u+x file.txt # 给用户添加执行权限
chmod +x file.sh # 添加执行权限
2)chown:修改文件所有者
chown user:group file.txt # 修改文件所有者和所属组
3)chgrp:修改文件所属的组
chgrp group file.txt
4.系统信息与进程管理
1)ps:查看当前运行的进程
ps aux # 显示所有进程
ps -ef # 显示所有进程(UNIX样式)
2)top:动态显示系统资源使用情况
top # 实时查看系统进程和资源使用情况
3)kill:终止进程
kill PID # 终止进程
kill -9 PID # 强制终止进程
4)htop:交互式进程查看工具
htop
5)df:查看磁盘空间使用情况
df -h # 以人类可读的方式显示磁盘空间
6)du:查看目录空间使用情况
du -sh /path/to/dir # 查看目录总占用空间
7)free:查看内存使用情况
free -h # 显示内存使用情况
5.网络命令
1)ping:测试网络连接
ping google.com # 测试与google的网络连接
2)ifconfig:显示网络接口信息(较旧的命令,现代系统可用ip命令)
ifconfig # 显示网络接口信息
3)ip:显示和配置网络接口信息
ip addr # 显示IP地址
ip link set eth0 up # 启动网络接口
4)netstat:查看网络连接与路由信息
netstat -tuln # 查看端口监听状态
5)curl:发送 HTTP 请求
curl http://example.com # 获取网页内容
6)wget:下载文件
wget http://example.com/file.zip
7)ssh:远程登录
ssh user@host # 远程连接到服务器
8)scp:远程拷贝文件
scp file.txt user@host:/path/to/destination
6.压缩与解压缩
1)tar:打包和解压文件
tar -czf archive.tar.gz dir/ # 打包并压缩目录
tar -xzf archive.tar.gz # 解压缩
2)gzip:压缩文件
gzip file.txt # 压缩文件
gunzip file.txt.gz # 解压文件
3)zip:压缩文件
zip archive.zip file1.txt file2.txt # 压缩文件
4)unzip archive.zip # 解压缩
7.Shell 常用技巧
1)命令替换:
current_time=$(date) # 将命令的输出赋值给变量
echo "Current Time: $current_time"
2)command & # 在后台运行命令
管道与重定向:
command1 | command2 # 管道,传递命令输出给另一个命令
command > output.txt # 输出重定向
3)查看命令历史:
history # 显示命令历史
!n # 执行第n条命令