Linux
Linux 命令行(Shell)是操作系统的核心交互方式,掌握基本语法能高效完成文件管理、系统配置、进程控制等任务。以下是 Linux 基本语法和常用命令的分类总结:
一、基础语法规则
-
命令结构
bashcommand [options] [arguments] command:要执行的命令(如ls,cd)。options:以-或--开头的参数(如-l,--help)。arguments:命令作用的对象(如文件名、目录名)。
-
大小写敏感
Linux 区分大小写,File.txt和file.txt是不同文件。 -
空格分隔
命令、选项和参数之间用空格分隔,文件名包含空格时需用引号包裹:bashtouch "my file.txt" -
快捷键
Tab:自动补全命令或文件名。Ctrl + C:终止当前命令。Ctrl + Z:暂停当前进程(可配合fg恢复)。↑/↓:浏览历史命令。
二、文件与目录操作
1. 目录导航
| 命令 | 示例 | 说明 |
|---|---|---|
pwd |
pwd |
显示当前工作目录路径 |
cd |
cd /home/user |
切换目录(cd ~ 返回用户主目录) |
ls |
ls -l |
列出目录内容(-a 显示隐藏文件) |

2. 文件操作
| 命令 | 示例 | 说明 |
|---|---|---|
touch |
touch file.txt |
创建空文件或更新文件时间戳 |
cp |
cp file1.txt file2.txt |
复制文件(-r 递归复制目录) |
mv |
mv old.txt new.txt |
移动/重命名文件 |
rm |
rm -rf dir/ |
删除文件/目录(-r 递归,-f 强制) |
cat |
cat file.txt |
查看文件内容 |
less |
less file.txt |
分页查看文件(支持搜索) |
head/tail |
tail -f log.txt |
查看文件开头/结尾(-f 实时追踪) |
3. 文件搜索
| 命令 | 示例 | 说明 |
|---|---|---|
find |
find /home -name "*.txt" |
按名称搜索文件 |
grep |
grep "error" log.txt |
在文件中搜索文本 |
which |
which python |
查找命令的安装路径 |
三、权限管理
1. 文件权限
- 权限格式:
-rwxr-xr--(共10位,首字符表示类型,后9位分3组)r:读(4),w:写(2),x:执行(1)- 示例:
-rwxr-xr--= 用户(7),组(5),其他(4)
2. 修改权限
| 命令 | 示例 | 说明 |
|---|---|---|
chmod |
chmod 755 script.sh |
设置权限(数字模式) |
chmod u+x file.txt |
添加用户执行权限(符号模式) | |
chown |
chown user:group file.txt |
修改文件所有者/组 |
四、系统信息与管理
1. 系统信息
| 命令 | 示例 | 说明 |
|---|---|---|
uname |
uname -a |
显示系统信息(内核版本等) |
df |
df -h |
查看磁盘空间(-h 人类可读格式) |
free |
free -m |
查看内存使用情况(-m 以MB为单位) |
top |
top |
实时监控系统进程和资源占用 |
ps |
ps aux |
查看当前进程列表 |

2. 用户管理
| 命令 | 示例 | 说明 |
|---|---|---|
sudo |
sudo apt update |
以管理员权限执行命令 |
su |
su - username |
切换用户(- 加载环境变量) |
passwd |
passwd |
修改当前用户密码 |
3. 网络管理
| 命令 | 示例 | 说明 |
|---|---|---|
ping |
ping example.com |
测试网络连通性 |
ifconfig |
ifconfig |
查看网络接口信息(部分系统用 ip a) |
netstat |
netstat -tuln |
查看网络连接和端口 |
ssh |
ssh user@host |
远程登录服务器 |
scp |
scp file.txt user@host:/path |
安全复制文件到远程主机 |
五、包管理(以 Ubuntu/Debian 为例)
| 命令 | 示例 | 说明 |
|---|---|---|
apt update |
sudo apt update |
更新软件包列表 |
apt install |
sudo apt install nginx |
安装软件包 |
apt remove |
sudo apt remove nginx |
卸载软件包(保留配置) |
apt purge |
sudo apt purge nginx |
完全卸载软件包 |
apt upgrade |
sudo apt upgrade |
升级所有可升级的软件包 |
六、重定向与管道
| 操作符 | 示例 | 说明 |
|---|---|---|
> |
echo "Hello" > file.txt |
将输出重定向到文件(覆盖) |
>> |
echo "World" >> file.txt |
追加输出到文件 |
< |
cat < file.txt |
从文件读取输入 |
| ` | ` | `cat file.txt |
七、环境变量
| 命令 | 示例 | 说明 |
|---|---|---|
echo |
echo $PATH |
查看环境变量值 |
export |
export VAR="value" |
设置环境变量(临时生效) |
vim ~/.bashrc |
export PATH=$PATH:/new/path |
在配置文件中永久添加变量(需 source ~/.bashrc 生效) |
八、脚本基础
-
创建脚本
bashecho "Hello, Linux!" #!/bin/bash指定解释器(Shebang)。- 保存为
script.sh后,添加执行权限:chmod +x script.sh。
-
条件判断
bashif [ -f "file.txt" ]; then echo "File exists." fi -
循环
bashfor i in {1..5}; do echo "Number: $i" done
九、实用技巧
-
查看命令帮助
bashman command # 详细手册 command --help # 快速帮助 -
组合命令
bashcommand1 && command2 # 只有前一个成功才执行后一个 command1 || command2 # 前一个失败才执行后一个 -
后台运行
bashcommand & # 后台运行 jobs # 查看后台任务 fg %1 # 将任务1切回前台
掌握这些基础语法后,可以进一步学习高级命令(如 awk、sed)、正则表达式、系统服务管理(systemd)等进阶内容。Linux 命令行的高效性在于组合使用简单命令完成复杂任务,建议通过实践加深理解。
浙公网安备 33010602011771号