1. Linux基础命令概述
在Linux系统中,命令行是与操作系统交互的核心方式。与图形界面相比,命令行操作更加高效、灵活,尤其适合服务器管理和自动化任务。基础命令是每个Linux用户必须掌握的技能,它们构成了日常系统操作的基础。
Linux命令通常遵循以下语法结构:
code复制命令 [选项] [参数]
其中:
- 命令:要执行的操作
- 选项:修改命令行为的标志,通常以"-"或"--"开头
- 参数:命令操作的对象
2. 文件系统操作命令
2.1 目录导航与查看
pwd命令显示当前工作目录的完整路径:
bash复制$ pwd
/home/username
ls命令列出目录内容,常用选项:
-l:长格式显示-a:显示隐藏文件-h:人类可读的文件大小
bash复制$ ls -lah
total 12K
drwxr-xr-x 2 user user 4.0K Jun 15 10:00 .
drwxr-xr-x 5 user user 4.0K Jun 14 09:00 ..
-rw-r--r-- 1 user user 220 Jun 15 10:00 .bashrc
cd命令切换目录:
bash复制$ cd /var/log # 绝对路径
$ cd ../.. # 相对路径
$ cd ~ # 返回家目录
2.2 文件操作
cp命令复制文件:
bash复制$ cp source.txt destination.txt
$ cp -r dir1 dir2 # 递归复制目录
mv命令移动或重命名文件:
bash复制$ mv oldname.txt newname.txt
$ mv file.txt /target/directory/
rm命令删除文件:
bash复制$ rm file.txt
$ rm -rf directory/ # 强制递归删除目录
警告:
rm -rf命令极其危险,执行前务必确认路径正确
3. 文本处理命令
3.1 查看文件内容
cat命令连接并显示文件内容:
bash复制$ cat file.txt
less和more命令分页查看文件:
bash复制$ less large_file.log
$ more large_file.log
head和tail命令查看文件开头或结尾:
bash复制$ head -n 10 file.txt # 显示前10行
$ tail -f /var/log/syslog # 实时跟踪日志
3.2 文本搜索与处理
grep命令搜索文本:
bash复制$ grep "error" /var/log/syslog
$ grep -r "function" /path/to/code/ # 递归搜索
awk和sed是强大的文本处理工具:
bash复制$ awk '{print $1}' file.txt # 打印每行第一个字段
$ sed 's/old/new/g' file.txt # 全局替换文本
4. 系统管理命令
4.1 进程管理
ps命令查看进程:
bash复制$ ps aux # 显示所有用户的所有进程
top和htop实时监控系统资源:
bash复制$ top
$ htop # 需要额外安装
kill命令终止进程:
bash复制$ kill -9 1234 # 强制终止PID为1234的进程
4.2 权限管理
chmod修改文件权限:
bash复制$ chmod 755 script.sh
$ chmod +x script.sh # 添加执行权限
chown修改文件所有者:
bash复制$ chown user:group file.txt
5. 网络相关命令
5.1 网络配置
ifconfig或ip命令查看网络接口:
bash复制$ ifconfig
$ ip addr show
ping测试网络连通性:
bash复制$ ping google.com
5.2 远程连接
ssh远程登录:
bash复制$ ssh username@hostname
scp安全复制文件:
bash复制$ scp file.txt user@remote:/path/
6. 实用技巧与常见问题
6.1 命令组合与管道
使用管道(|)组合多个命令:
bash复制$ ps aux | grep nginx | awk '{print $2}'
重定向输入输出:
bash复制$ command > output.txt # 输出重定向
$ command 2> error.log # 错误重定向
$ command < input.txt # 输入重定向
6.2 常见问题排查
- 命令找不到:
bash复制$ command not found
解决方案:
- 检查命令拼写
- 确认命令是否安装
- 检查PATH环境变量
- 权限不足:
bash复制$ Permission denied
解决方案:
- 使用
sudo提升权限 - 检查文件权限(
ls -l) - 修改权限或所有者
- 磁盘空间不足:
bash复制$ No space left on device
解决方案:
- 使用
df -h查看磁盘使用情况 - 使用
du -sh *查找大文件 - 清理不需要的文件
7. 命令历史与自动补全
history命令查看命令历史:
bash复制$ history
$ !123 # 执行历史记录中第123条命令
使用Tab键自动补全命令、文件名和路径,可以大大提高效率。
8. 环境变量与配置文件
查看环境变量:
bash复制$ echo $PATH
$ env
修改环境变量:
bash复制$ export PATH=$PATH:/new/path
常用配置文件:
~/.bashrc:用户bash配置~/.bash_profile:登录配置/etc/profile:系统全局配置
9. 软件包管理
不同Linux发行版使用不同的包管理工具:
Debian/Ubuntu (APT):
bash复制$ sudo apt update
$ sudo apt install package
$ sudo apt remove package
RedHat/CentOS (YUM/DNF):
bash复制$ sudo yum install package
$ sudo dnf install package
Arch Linux (Pacman):
bash复制$ sudo pacman -S package
10. 系统信息查询
uname查看系统信息:
bash复制$ uname -a
df查看磁盘空间:
bash复制$ df -h
free查看内存使用:
bash复制$ free -h
uptime查看系统运行时间:
bash复制$ uptime
掌握这些基础命令后,你将能够高效地管理和操作Linux系统。随着经验的积累,可以进一步学习shell脚本编程,将这些命令组合起来实现自动化任务。
