一、Linux 基础概念
1.1 文件系统结构
在 Linux 系统中,根目录(/)是文件系统层次结构的起始点。
| 目录 |
说明 |
| /bin |
存放基本命令 (ls, cp, mv 等),系统启动必需 |
| /boot |
内核和引导加载程序文件 |
| /dev |
设备文件 |
| /etc |
系统配置文件 |
| /home |
用户主目录 |
| /lib |
系统库文件 |
| /opt |
第三方软件包安装目录 |
| /proc |
虚拟文件系统,包含进程和内核信息 |
| /root |
系统管理员(root)主目录 |
| /sbin |
系统管理员命令 (ifconfig, fdisk 等) |
| /tmp |
临时文件 |
| /usr |
用户应用程序和文件 |
| /var |
经常变化的文件 (日志、数据库等) |
1.2 Shell 简介
Shell 是用户与 Linux 内核交互的桥梁。常用的 Shell 有 sh、bash、zsh 等。
查看当前系统支持的 Shell:
二、基本操作
2.1 文件与目录管理
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ls -la
cd /path/to/directory
pwd
mkdir -p /a/b/c
rm -rf /path/to/remove
cp -r source_dir target_dir
mv old_name new_name
|
2.2 文件查看与编辑
查看文件
1 2 3 4 5 6 7 8 9
| cat filename
tail -n 100 filename tail -f access.log
head -n 20 filename
|
编辑器对比
- cat: 仅用于查看或合并输出,不可交互编辑。
- vi/vim: 强大的命令行编辑器。vim 是 vi 的增强版,支持语法高亮。
- nano: 简单易用的轻量级编辑器。
2.3 压缩与解压
| 格式 |
解压命令 |
压缩命令 |
| .tar |
tar xvf file.tar |
tar cvf file.tar dir |
| .tar.gz |
tar zxvf file.tar.gz |
tar zcvf file.tar.gz dir |
| .gz |
gzip -d file.gz |
gzip file |
| .zip |
unzip file.zip |
zip -r file.zip dir |
注:tar 本身只是打包,结合 gzip 才会压缩。
三、高级操作
3.1 进程管理
查看进程
1 2 3 4
| ps -ef
ps -ef | grep python
|
终止进程
技巧:批量杀死进程
1 2
| ps -ef | grep python | grep -v grep | cut -c 6-11 | xargs kill -9
|
cut -c 6-11: 截取 PID 列(根据实际输出调整列位置,推荐使用 awk '{print $2}' 更稳健)。
xargs: 将前面的输出作为参数传递给 kill。
3.2 网络与传输 (SCP)
远程拷贝 (SCP)
1 2 3 4 5 6 7 8 9 10 11
| scp user@remote_ip:/path/to/file /local/path
scp -r user@remote_ip:/path/to/dir /local/path
scp /local/file user@remote_ip:/path/to/dest
scp -r /local/dir user@remote_ip:/path/to/dest
|
常见问题
如果遇到 Host key verification failed,可能是服务器重装过系统,指纹变了。
解决方法:
1 2
| ssh-keygen -R <remote_ip>
|
查看网络信息
1 2
| ifconfig | grep "inet " | grep -v 127.0.0.1
|
3.3 系统信息查看
查看系统版本
1 2 3 4 5 6
| lsb_release -a
uname -a cat /proc/version
|
查看资源占用
四、进阶技巧:管道与重定向
4.1 管道符 |
将前一个命令的输出作为后一个命令的输入。
1 2
| cat log.txt | grep 'ERROR'
|
4.2 重定向 > 与 >>
示例:使用 EOF 写入多行文本
1 2 3 4 5 6 7 8 9 10
| cat <<EOF > test.txt Hello World End of File EOF
cat <<EOF >> test.txt New Line EOF
|