Linux 是一种广泛使用的开源操作系统,掌握 Linux 命令是开发者和系统管理员的必备技能。本文将详细介绍 Linux 的常用命令,并涵盖一些高级进阶技巧,帮助你更高效地使用 Linux。
ls
- 列出目录内容ls # 列出当前目录内容
ls -l # 以长格式列出
ls -a # 列出所有文件(包括隐藏文件)
ls -lh # 以易读格式显示文件大小
cd
- 切换目录cd /home # 切换到 /home 目录
cd .. # 返回上一级目录
cd ~ # 切换到用户主目录
mkdir
- 创建目录mkdir dir1 # 创建目录 dir1
mkdir -p dir1/dir2 # 递归创建目录
rm
- 删除文件或目录rm file.txt # 删除文件
rm -r dir1 # 递归删除目录
rm -f file.txt # 强制删除文件
cp
- 复制文件或目录cp file1 file2 # 复制文件
cp -r dir1 dir2 # 递归复制目录
mv
- 移动或重命名文件mv file1 file2 # 重命名文件
mv file1 dir1/ # 移动文件到目录
touch
- 创建空文件或更新文件时间戳touch file.txt # 创建空文件
cat
- 查看文件内容cat file.txt # 查看文件内容
cat file1 file2 # 合并多个文件
more
和 less
- 分页查看文件more file.txt # 分页查看文件
less file.txt # 支持上下滚动查看
head
和 tail
- 查看文件开头或结尾head file.txt # 查看文件前 10 行
tail file.txt # 查看文件后 10 行
tail -f file.txt # 实时查看文件新增内容
grep
- 文本搜索grep "pattern" file.txt # 搜索包含 pattern 的行
grep -i "pattern" file.txt # 忽略大小写搜索
grep -r "pattern" dir1/ # 递归搜索目录
sed
- 流编辑器sed 's/old/new/' file.txt # 替换文件中的文本
sed -i 's/old/new/' file.txt # 直接修改文件
awk
- 文本处理工具awk '{print $1}' file.txt # 打印文件的第一列
awk -F: '{print $1}' /etc/passwd # 以冒号为分隔符打印第一列
uname
- 显示系统信息uname -a # 显示所有系统信息
df
- 显示磁盘使用情况df -h # 以易读格式显示磁盘使用情况
free
- 显示内存使用情况free -h # 以易读格式显示内存使用情况
top
- 实时显示系统进程top # 显示系统进程和资源使用情况
chmod
- 修改文件权限chmod 755 file.txt # 设置文件权限为 rwxr-xr-x
chmod +x script.sh # 添加可执行权限
chown
- 修改文件所有者chown user:group file.txt # 修改文件所有者和所属组
sudo
- 以超级用户权限执行命令sudo apt update # 以超级用户权限更新软件包
ps
- 显示进程状态ps aux # 显示所有进程
kill
- 终止进程kill 1234 # 终止进程 ID 为 1234 的进程
kill -9 1234 # 强制终止进程
nohup
- 后台运行进程nohup command & # 后台运行命令,忽略挂断信号
ping
- 测试网络连接ping google.com # 测试与 google.com 的连接
ifconfig
- 显示网络接口信息ifconfig # 显示网络接口信息
netstat
- 显示网络状态netstat -tuln # 显示所有监听端口
ssh
- 远程登录ssh user@host # 远程登录到主机
fdisk
- 磁盘分区工具sudo fdisk -l # 列出磁盘分区
mount
- 挂载文件系统sudo mount /dev/sdb1 /mnt # 挂载设备到目录
du
- 显示目录磁盘使用情况du -sh dir1/ # 显示目录的磁盘使用情况
#!/bin/bash
echo "Hello, World!"
chmod +x script.sh
./script.sh
|
)cat file.txt | grep "pattern" # 将 cat 的输出作为 grep 的输入
>
和 >>
)echo "Hello" > file.txt # 将输出重定向到文件(覆盖)
echo "World" >> file.txt # 将输出追加到文件
grep "^start" file.txt # 匹配以 start 开头的行
grep "end$" file.txt # 匹配以 end 结尾的行
grep -E "pattern1|pattern2" file.txt # 匹配 pattern1 或 pattern2
cron
- 定时任务crontab -e # 编辑定时任务
* * * * * command # 每分钟执行一次命令
at
- 一次性任务at now + 5 minutes # 5 分钟后执行任务
vmstat
- 显示系统性能vmstat 1 # 每秒显示一次系统性能
iostat
- 显示磁盘 I/O 性能iostat 1 # 每秒显示一次磁盘 I/O 性能
grep "ERROR" /var/log/syslog
grep "ERROR" /var/log/syslog | wc -l
#!/bin/bash
git pull origin master
npm install
pm2 restart app
crontab -e
0 * * * * /path/to/deploy.sh
top -b -n 1 | grep "Cpu(s)"
free -m | grep "Mem:"
通过本文,你应该掌握了 Linux 的基础命令、进阶技巧以及一些高级应用场景。继续实践和探索,你将能够更高效地使用 Linux!