2022-07-06-【指令】Linux常用指令全集

一、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 有 shbashzsh 等。
查看当前系统支持的 Shell:

1
cat /etc/shells

二、基本操作

2.1 文件与目录管理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 列出目录内容 (-l 详细信息, -a 显示隐藏文件)
ls -la

# 切换目录
cd /path/to/directory

# 显示当前工作目录
pwd

# 创建目录 (-p 递归创建)
mkdir -p /a/b/c

# 删除文件或目录 (-r 递归, -f 强制)
rm -rf /path/to/remove

# 复制 (-r 递归复制目录)
cp -r source_dir target_dir

# 移动或重命名
mv old_name new_name

2.2 文件查看与编辑

查看文件

1
2
3
4
5
6
7
8
9
# 查看所有内容
cat filename

# 查看文件尾部 (-n 行数, -f 实时追踪)
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
# 结合 grep 查找特定进程
ps -ef | grep python

终止进程

1
2
# 强制杀死指定 PID 的进程
kill -9 <PID>

技巧:批量杀死进程

1
2
# 杀死所有包含 'python' 的进程
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

# 下载目录: 远程 -> 本地 (-r)
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
# 清除旧的 host key
ssh-keygen -R <remote_ip>

查看网络信息

1
2
# 查看 IP 地址 (macOS/Linux)
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

查看资源占用

1
2
3
4
5
# 磁盘空间
df -h

# 当前目录大小
du -sh ./*

四、进阶技巧:管道与重定向

4.1 管道符 |

将前一个命令的输出作为后一个命令的输入。

1
2
# 查找日志中的 ERROR
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

2022-07-06-【指令】Linux常用指令全集
https://zhangyingxuan.github.io/2022-07-06-【指令】linux指令/
作者
blowsysun
许可协议