1.2 Linux 命令概述

1.2.1 Shell 解释器(翻译官)

  1. 作用:接收用户命令,解析转换为内核指令,返回执行结果;用户不能直接操作内核。
  2. openEuler 默认 Shell:Bash,程序文件/bin/bash
  3. 提示符:# root 管理员;$普通用户。

    1.2.2 内部命令与外部命令

    对比项 内部命令 built‑in 外部命令
    存储 集成 Shell 内部,无独立文件,常驻内存 硬盘独立可执行程序,位于/bin /usr/bin等目录
    执行效率 高,直接内存运行 较低,读取硬盘文件
    查询方式 type 命令名输出 is a shell builtin type 命令名输出文件绝对路径
    示例 pwd cd echo help history ls cp rm mv find

    PATH 环境变量:定义外部命令搜索目录,echo $PATH查看。自定义程序目录加入 PATH 可直接执行命令。

    1.3 文件与目录管理核心命令

    Linux 设计理念:一切皆文件

    1.3.1 查看目录 pwd、cd、ls、du

    1)pwd(内部命令):打印当前路径
    pwd        #默认‑L显示逻辑路径
    pwd -P     #显示物理真实路径,忽略符号链接
    
    2)cd(内部命令)切换目录

    格式:cd [目标路径]

    写法 说明
    cd / cd ~ 回到当前用户家目录 (root 为 /root)
    cd .. 切换到上一级父目录
    cd - 切换回上一次所在目录
    cd ~student 切换到 student 用户家目录
    cd /boot 绝对路径切换

    绝对路径:以/开头;相对路径不以/开头,基于当前工作目录。

    3)ls(外部)列出目录内容

    格式:ls [选项] [目录名]

    选项 作用
    ‑l 长格式显示,权限、属主、大小、时间
    ‑a 显示全部,含隐藏文件(.开头)
    ‑A 显示隐藏,排除. ..
    ‑h 人性化显示大小 (K/M/G),配合‑l
    ‑R 递归显示全部子目录内容

    文件颜色:深蓝色目录;白色普通文件;绿色可执行;浅蓝色符号链接;红色压缩包。

4)du(外部)统计磁盘占用

格式:du [选项] [目录]

选项 功能
‑h 人性化单位显示
‑s 只显示总大小,不输出子目录详情
‑a 统计所有文件 + 目录
du -sh /var/log    #最常用,查看目录总占用
du -ah /boot
du -ah . | sort -rh #当前目录文件按大小排序

1.3.2 创建目录文件 mkdir、touch、ln

1)mkdir 创建目录
mkdir dir1                     #创建单个目录
mkdir dir1 dir2 dir3           #同时创建多个目录
mkdir -p /a/b/c                #‑p递归创建多层嵌套目录
2)touch 创建空文件 / 更新时间戳
touch test.txt
touch file1.txt file2.txt     #批量创建空文件

文件已存在时执行 touch 只会修改时间戳,不改动内容。

3)ln 创建链接文件

硬链接:同一 inode,同一分区,不能链接目录;软链接 (‑s) 符号链接,类似 Windows 快捷方式,可以跨分区、支持目录。

ln source.txt hardlink.txt         #硬链接
ln -s /bin/less /bin01/less        #‑s 创建软链接,源建议写绝对路径

1.3.3 cp、rm、mv 复制删除移动

1)cp 复制

复制目录必须加‑r递归选项。

cp file.txt /tmp/              #复制文件
cp -r dir1 /tmp/               #复制目录
2)rm 删除(无回收站,谨慎)

格式 rm [选项] 文件/目录

选项 说明
‑i 删除前交互确认(推荐)
‑f 强制删除,不提示
‑r 递归删除目录
rm -i test.txt
rm -rf testdir/    #强制递归删除目录
#禁止:rm -rf /  、rm -rf /* 致命命令!系统直接崩溃

安全建议:日常删除优先rm -i;可配置别名alias rm='rm -i'

3)mv 移动 / 重命名

移动目录不需要‑r 参数

mv oldname.txt newname.txt     #同目录:重命名
mv file.txt /tmp/              #移动文件
mv dir1 public_html/           #移动目录
mv *.txt test_dir/             #批量移动

1.3.4 文件查找 which、find

1)which:查找外部命令程序路径

只查找 PATH 路径下外部命令;内部命令 which 找不到

which ls
which -a python     #‑a输出PATH中全部匹配命令
2)find 高级查找

格式:find 查找范围 查找条件 [执行动作]

常用条件:

表格

条件 说明
‑name "*.conf" 按文件名查找;‑iname 忽略大小写
‑type f/d/l f 普通文件;d 目录;l 软链接
‑size +100k 大于 100k;‑10M小于 10M;单位 k 小写,M/G 大写
‑user root 按文件属主查找
‑mtime +7 7 天之前修改的文件

逻辑运算符: ‑a与(默认);‑o或;‑not

示例:

find /etc -name "resol*.conf"
find /boot -type d
find /root -type f -size +100k
find /root/test -type f -mtime +7 -delete  #查找并删除7天前文件
  1. 文件目录高频命令汇总
pwd cd ls du      #查看目录
mkdir touch ln    #创建目录、文件、链接
cp rm mv          #复制删除移动
which find        #文件查找
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐