linux基础

Linux 操作基础文档

一、远程登录与关机/重启操作

远程登录

1
ssh root@192.168.202.136

断开连接

1
exit

重启系统

1
2
3
reboot
# 或者
shutdown -r now

默认30秒后关机

1
shutdown

立即关机

1
shutdown -h now

10分钟后关机

1
shutdown -h 10

二、文件和目录操作

1. 创建文件

1
2
3
4
touch 1.txt                # 创建单个文件
touch test{1..10}.txt # 批量创建文件 test1.txt 到 test10.txt
touch test{a..f}.txt # 批量创建 testa.txt 到 testf.txt
touch /root/4.txt # 指定路径创建文件

⚠️ touch 不会覆盖已有同名文件。

2. 查看目录文件

1
2
3
4
5
6
7
ls                        # 查看当前目录内容
ls test09.txt # 查看指定文件是否存在
ls *.txt # 查看所有 txt 文件
ls -1 # 每行显示一个文件(注意是数字1)
ls -a # 显示所有文件,包括隐藏文件
ls -a -1 # 所有文件 + 每行一个
ls -l # 详细信息列表

3. 移动与重命名文件

1
2
3
mv 222.txt 123.txt        # 重命名
mv 123.txt /opt # 移动文件到指定目录
mv aaa wulaoban # 重命名文件夹

4. 复制文件/目录

1
2
cp test01.txt /opt/       # 复制文件
cp -a dev04 /opt/ # 复制整个目录(需在其上一级目录执行)

5. 删除文件/目录(危险操作❗)

1
2
3
4
rm /opt/123.txt           # 删除文件(需确认)
rm -f /opt/test01.txt # 强制删除
rm file1 file2 file3 # 删除多个文件
rm -rf dev # 强制递归删除目录

6. 创建目录

1
2
3
mkdir dev                 # 创建单个目录
mkdir dev{01..10} # 批量创建目录
mkdir -p 1/2/3/4/5/6 # 创建多级子目录

7. 切换目录

1
2
3
4
5
cd local                  # 进入 local 目录
cd /usr/local # 进入指定路径
cd .. # 返回上一级目录
cd ../.. # 返回上两级目录
cd / # 进入根目录

8. 打印当前目录

1
pwd                       # 显示当前路径

9. 历史命令查询

1
history

三、文本操作与查看

10. vi 编辑器(三种模式)

1
vi test03.txt             # 打开文件编辑
  • 编辑模式: 输入 a/i/o 进入编辑
  • 常规模式: 按 esc 回到默认
  • 命令模式: 输入 : 开始命令

常用命令:

1
2
3
4
:wq   # 保存退出
:q # 退出
:q! # 强制退出不保存
dd # 删除整行

11. 查看文件内容

1
2
3
4
5
6
cat test03.txt            # 从头到尾查看
tac test03.txt # 倒序查看
head test03.txt # 查看前10行
head -5 test03.txt # 查看前5行
tail test03.txt # 查看后10行
tail -n 5 test03.txt # 查看后5行

四、管道与过滤操作

12. 管道符(|)

1
2
3
ip addr | tail -4                         # 查看命令输出最后4
ip addr | tail -4 | head -1 # 截取中间某一行
ip addr | tail -4 | head -1 | cut -c 10-19 # 取出字符的第10~19列(不常用)

13. 统计命令 wc

1
2
3
4
cat aaa.txt | wc -l     # 统计行数
cat -n aaa.txt # 显示内容 + 行号
wc -c aaa.txt # 统计字符数
ip addr | wc -l # 统计行数

14. 生成数字序列 seq

1
2
seq 5 12                  # 输出 512
seq -w 5 12 # 等宽格式输出

15. 行过滤 grep

1
2
3
4
grep '333' aaa.txt             # 模糊匹配行中含有 333
grep -n '333' aaa.txt # 显示行号
ip addr | grep 'inet' # 过滤出包含 inet 的行
grep -w '关键字' 文件 # 精准匹配整词

16. 按列取值 awk

1
2
3
4
awk '{print $1}' aaa.txt         # 输出第一列
awk '{print $2}' aaa.txt # 输出第二列
awk -F ',' '{print $1}' aaa.txt # 以逗号为分隔符取第一列
awk -F ',' '{print $NF}' aaa.txt # 取最后一列

17. 排序 sort

1
2
cat test02.txt | sort -n        # 按数字升序排序
cat test02.txt | sort -n -r # 数字降序排序

18. 去重 uniq

1
2
cat test02.txt | sort -n | uniq         # 去重
cat test02.txt | sort -n | uniq -c # 去重并统计每项出现次数

五、Linux 目录结构基础与路径理解

📌 Linux 的一切皆文件。以下是常见目录说明,重要目录切勿随意删除!

目录 功能说明 是否可删除
/bin 存放基本二进制命令(如 ls, cp, mv 等) ❌不能删除
/sbin 系统管理员使用的命令(如 reboot, shutdown 等) ❌不能删除
/boot 启动引导相关文件(如内核) ❌不能删除
/dev 设备文件目录,如硬盘、U盘、终端等 ❌不能删除
/etc 系统配置文件目录,相当于 Windows 的注册表 ❌不能删除
/home 所有普通用户的家目录所在位置 ✅可管理(慎删)
/root root 管理员用户的专属家目录 ❌不能删除
/lib 32 位系统库文件(.so动态链接库) ❌不能删除
/lib64 64 位系统库文件 ❌不能删除
/media 系统挂载可移动介质(U盘、光盘)时的默认目录 ⚠️可删除(root 权限)
/mnt 手动挂载目录(如 NFS/U盘) ⚠️可删除
/opt 第三方软件默认安装路径之一 ⚠️可删除
/proc 虚拟进程目录,每个运行中的进程一个目录 ❌不能删除
/srv 通常用于放置服务相关的源代码或数据 ⚠️可删除
/sys 提供内核与硬件交互的接口 ❌不能删除
/tmp 临时文件目录,系统重启或定期自动清除 ⚠️可清空
/run 存放运行时状态文件,如 PID 文件、锁文件等 ❌不能删除
/usr 用户级程序、库、资源文件目录(如 /usr/bin) ❌不能删除
/var 经常变动的数据目录,如日志 /var/log、缓存等 ❌不能删除

六、用户和用户组管理

👤 1. 用户管理

创建用户

1
2
useradd test1          # 创建 test1 用户
passwd test1 # 为 test1 设置密码(root 操作)

查看用户信息

1
id test1

删除用户

1
2
userdel test1              # 删除用户(需先退出登录)
userdel -r test1 # 删除用户并清理家目录等相关内容

修改用户属性

1
2
usermod -L test1           # 锁定用户,禁止登录
usermod -U test1 # 解锁用户

查看用户信息

1
chage -l test1             # 查看用户密码和过期策略

七、权限管理

1. 权限介绍和示例

文件权限组成:

1
2
-rw-r--r--. 1 root root 0 7月 20 23:17 /tmp/123.txt

2. 权限操作示例

1
2
3
chmod u+x test1.txt
chmod 777 test1.txt

3. 文件属性详解

1
2
ls -l /tmp/123.txt


八、Linux Shell

1. Shell 概念

Shell 是用户与内核的交互界面。

2. 优化 SSH 登录速度

1
2
3
4
5
6
7
cp /etc/ssh/sshd_config /tmp/
vi /etc/ssh/sshd_config
# 添加:
GSSAPIAuthentication no
UseDNS no
systemctl restart sshd

3. Shell 提示符

1
2
export PS1='[\u@\h \w]\$ '

4. 常用快捷键

  • Ctrl + A:光标移至行首
  • Ctrl + E:光标移至行尾
  • Ctrl + C:终止前台进程
  • Ctrl + Z:暂停并后台运行

5. 历史命令(history)

1
2
history          # 列出最近 1000 条(可在 $HISTSIZE 修改)

6. 命令别名(alias)

1
2
3
alias ll='ls -l --color=auto'
unalias ll


linux基础
https://bae-ace.github.io/2025/07/20/linux基础/
作者
bae
发布于
2025年7月20日
许可协议