Linux - Ubuntu - PC端:(五)shell 操作(终端命令,2026)→ 3)基础命令,27 个常用命令

上一篇 下一篇
shell 操作 → 1)说明 + 2)符号说明

目 录


3)基础命令

注意大小写!!

cd(目录切换)

根目录:整个 Ubuntu 系统的根目录,就和 winodws 的 "此电脑" 一样

主目录:当前用户的目录,是根目录下的二级子目录(/home/username

命令 作用说明
cd 不论当前处于什么目录,直接切换到当前用户的主目录(如 /home/username/root,进入后显示 ~$
cd ~ 同上(~ 代表当前用户主目录)
cd / 不论当前处于什么目录,直接切换到根目录( / 代表根目录,进入后显示 /$
cd .. 切换到上级目录(父目录)
cd ../.. 切换到上两级目录(祖父目录)
cd - 快速返回上一个工作目录(非常实用!)
cd . 保持在当前目录(无实际作用,但语法合法)
cd ./subdir 进入当前目录下的子目录 subdir
cd /absolute/path 使用绝对路径进入当前目录下的指定子目录
cd relative/path 使用相对路径进入当前目录下的指定子目录

ls(查看目录信息)

相关的命令有很多,这里只列出常用的。注意空格......

口诀:a 看隐藏,l 看详情,t 按时间,R 递归查,.. 上一级,subdir 下一级,组合灵活用,路径随心达。

说明:

  • 无论你在哪个子目录中,都可以通过 ls 命令来查看上级甚至更高层级、下级甚至更下级目录的内容;
  • 若目录名含空格,需用引号或转义,例如:ls "my folder"ls my\ folder

当前目录操作命令(表格中的前 7 个比较重要):

命令 作用
ls 列出当前目录下的 非隐藏文件和文件夹(仅文件名)
ls -a 列出 所有文件和文件夹 ,包括以 . 开头的隐藏文件(如 .bashrc, .profile
ls -l 长格式 列出 非隐藏文件和文件夹,显示权限、链接数、所有者、组、大小、修改时间、文件名等详细信息
ls -t 修改时间从新到旧 列出非隐藏文件和文件夹(最新在前)
ls -r 反向排序 (常与 -t 组合为 ls -tr,按时间从旧到新)
ls -A 类似 -a,但是不列出 "."(当前目录)和 "..."(父目录)
ls -R 递归列出 当前目录及其所有子目录中的 非隐藏文件和文件夹
ls -h -l 配合使用(如 ls -lh),以 人类可读 方式显示文件大小(如 1K, 2M, 3G),但几乎和 ls 本身没什么差别
ls -S 文件大小 从大到小排序列出 非隐藏文件和文件夹
ls -d 仅列出目录本身,而不是其内容(常用于配合通配符或查看目录属性)

可组合(组合时,只需键入一个 - ,后面连写选项,选项相对位置无所谓),例如:

  • ls -alls -la:列出所有文件(含隐藏),并以长格式显示
  • ls -ltr:按时间从旧到新显示详细信息(常用于查看日志)
  • ls -lah:列出所有文件,详细信息 + 可读大小
  • ls -lR:递归显示所有子目录的详细信息

上级目录操作命令(任意层级,a/l等任意选项):

命令 作用
ls .. 列出父目录下的 非隐藏文件和文件夹
ls -l .. 查看父目录的详细信息
ls ../.. 查看祖父目录的内容,可以任意层级
ls -a .. 查看父目录中的所有文件(含隐藏)
...... ......

下级目录操作命令(任意层级,a/l等任意选项):

"下级目录"即当前目录中的子目录,通常表现为当前目录下的某个指定文件夹。

命令 作用
ls 指定文件夹 列出当前目录下 的 指定文件夹 中的 非隐藏内容
ls 指定文件夹1/指定文件夹2 列出当前目录下 的 指定文件夹1 中的 指定文件夹2 中的 非隐藏内容(可任意层级)
ls ./指定文件夹 显式使用 ./ 表示当前目录下的子目录(效果同上)
ls 指定文件夹1 指定文件夹2 同时列出多个子目录的内容(分别显示每个目录的标题)
ls */ 使用通配符 */ 列出当前目录下所有子目录的名称(不进入内容)
ls -l 指定路径 查看当前目录下 的 指定路径 中的 详细信息
ls -a 指定路径 查看当前目录下的 指定路径 中的 所有文件(含隐藏) ,等同于 ls 指定路径 -a
ls -R 指定路径 递归列出 指定路径下 及其所有嵌套子目录的内容
ls 指定文件夹/file.txt 查看特定文件是否存在(若存在则显示文件名,否则报错)
...... ......

pwd(显示当前目录的绝对路径)

pwd 命令用来显示当前工作目录的绝对路径(从根目录开始 ,例如 /home/username/... ),不需要任何的参数。

uname(查看系统信息)

命令全称:Unix Name

不论当前处于什么目录,都可以直接使用此命令。

选项 输出内容 示例输出(Linux)
uname 仅内核名称 Linux
uname -s 仅内核名称(同上) Linux
uname -n 主机名(网络节点名) myhost
uname -r 内核发布版本号 5.15.0-91-generic
uname -v 内核编译版本信息 #93~20.04.1-Ubuntu SMP Thu Feb 1 16:38:42 UTC 2024
uname -m 机器硬件架构(CPU 类型) x86_64
uname -o 操作系统类型 GNU/Linux
uname -a 全部信息(按顺序输出 -s -n -r -v -m -p -i -o

clear(清屏)

clear 命令用于清除终端上的所有内容,只留下一行提示符。但实际上并不是清除,而是向上隐藏,往上翻翻就还能翻到此前的命令。

不论当前处于什么目录,都可以直接使用此命令。

sudo(临时切换用户执行一条命令)

不指定用户名,一般都是默认切换到 root 用户

切换到 root 用户之后,要注意使用,避免将系统清空

Ubuntu(Linux)是一个允许多用户的操作系统,其中权限最大的就是超级用户 root,有时候我们执行一些操作的时候是需要用 root 用户身份才能执行,比如安装软件。通过 sudo 命令可以使我们暂时将身份切换到 root 用户,但仅在执行一条命令后,就会自动变回原来的用户执行 sudo 命令需要输入密码

基本语法:

shell 复制代码
sudo [选项] 命令

常用用法:

命令 说明
sudo 命令 以 root 身份执行 命令 ,✅ 只要是需要 root 权限的命令都可以在前面加 sudo
sudo -u username 命令 以指定用户 username 身份执行命令
sudo -i 模拟 root 登录(加载 root 的环境变量,如 .bashrc
sudo -s 启动 root shell(但保留当前环境变量)
sudo !! 重新执行上一条命令并加上 sudo(Bash 快捷方式)

想只输入 当前用户的密码 就能长期切换到 root 用户(无需键入 root 密码,root 密码一般都是未启用),使用如下命令

shell 复制代码
sudo su

切换回来的命令(这个也是只输入 当前用户的密码 就能长期切换到某个目标用户的命令):

shell 复制代码
sudo su username

示例:

shell 复制代码
mr-l-xiao@mrlxiao-virtual-machine:~$ sudoSU
[sudo]mr-1-xiao 的密码
root@mrlxiao-virtual-machine:/home/mr-1-xiao# sudo su mr-l-xiao
mr-l-xiao@mrlxiao-virtual-machine:~$

su(切换用户,可被 sudo su 替代)

不指定用户名,一般都是默认切换到 root 用户,但是不常用了

切换到 root 用户之后,要注意使用,避免将系统清空

基本语法:

shell 复制代码
su [选项] [用户名]

常用用法:

命令 说明
susu -m 切换用户(默认切换到 root ,需输入 root 密码),但是不加载目标用户的环境,即根目录还是原用户的根目录
su -su -lsu -login 完整登录式切换用户,加载目标用户的环境(推荐)
su username 切换到指定用户(需该用户密码)
su -c 命令 username 以某用户身份执行单条命令(较少用)

切换用户时需要输入密码

touch(创建文件)

创建空文件(如果文件不存在);更新文件的时间戳(如果文件已存在)------包括访问时间(atime)、修改时间(mtime)等。

基本语法:

shell 复制代码
touch [选项] 文件名1 文件名2 ...

常用用法:

命令 作用 示例
touch 文件名 若文件不存在,则创建一个空文件; 若存在,则更新其时间戳 touch notes.txt
touch file1 file2 ... 同时创建或触碰多个文件 touch a.log b.conf c.txt
touch {x..y}.ext 批量生成序列化文件名 touch {1..5}.txt → 创建 1.txt5.txt

其他的一些选项基本用不到。

cat(查看文件内容,也可创建/清空文件、追加内容等)

不要用 cat 查看大文件!cat 会一次性输出全部内容,导致终端卡死

不论当前处于什么目录,都可以使用此命令,但要注意给出路径。

命令 作用 示例(当前目录下)
cat 文件路径 显示 文件内容(包括所有空行)
cat -s 文件路径 显示 文件内容(但会压缩连续空行为单个空行) cat -s log.txt
cat -n 文件路径 显示 有行号的文件内容(对所有行进行编号,包括空行) cat -n file.txt
cat -b 文件路径 显示 有行号的文件内容(仅对非空行编号) cat -b script.sh
cat -E 文件路径 在每行末尾显示 $(便于查看换行符) cat -E data.csv
cat -T 文件路径 将 Tab 显示为 ^I cat -T Makefile
cat -v 文件路径 显示非打印字符(如控制字符) (较少单独使用)
cat -A 文件路径 等价于 -vET:显示所有不可见字符(包括 $^I、特殊控制符) cat -A hidden.txt

文件路径(cat 支持绝对路径、相对路径、甚至符号链接指向的文件,不限于当前目录,但要有读写权限):

  • 在当前目录下,文件路径可以只给出文件名;
  • 相对路径: 以当前目录为起点,用 ... 表示层级,例如 cat ../test.txt
  • 绝对路径: 从根目录 / 开始的完整路径,例如 cat /home/username/test.txt
  • ~ 的路径: Shell 会自动将 ~ 展开为当前用户的主目录;
  • 符号链接: cat 会自动跟随符号链接读取目标文件。

文件叫什么名字要写全,有扩展名就要写上扩展名,比如 test.txt

进阶用法:

功能 命令(举例) 说明
显示多个文件(依次拼接) cat 文件路径1 文件路径2 文件之间没有空行隔开
创建新文件(交互式输入) cat > newfile.txt 输入内容(按 Enter 换行) 结束输入:按 Ctrl+D(EOF) ⚠️ 若文件已存在,会被覆盖
追加内容到文件 cat >> existing.txt 输入内容(按 Enter 换行) 结束输入:按 Ctrl+D,内容将追加existing.txt 末尾
合并多个文件为一个新文件 cat part1.txt part2.txt part3.txt > combined.txt 将三个文件内容按顺序合并到 combined.txt
清空文件内容 cat /dev/null > 文件路径 等同于 cat > 文件路径

cp(文件拷贝)

若目标文件不存在时,拷贝文件;若目标文件存在时,会被覆盖。

常用用法:

命令 作用 示例
cp 源文件 目标文件 复制单个文件到新文件,若目标存在则覆盖 cp A.txt B.txt
cp 源文件 目录/ 将文件复制到指定目录 cp A.txt ~/Documents/
cp file1 file2 dir/ 同时复制多个文件到目录 cp a.log b.conf /tmp/
cp -r 源目录 目标目录 递归复制整个目录1到目录2(含子目录和文件) cp -r project/ backup/
cp -i ... 覆盖前交互式提示确认 cp -i file.txt existing.txt
cp -v ... 显示复制过程("做了什么") cp -rv docs/ archive/
cp -f ... 强制覆盖(即使目标只读) cp -f config.bak config
cp --backup ... 覆盖前自动备份原文件 cp --backup=numbered file.txt file.txt

find(查找文件)

find 用于查找文件在哪个位置,默认递归整个目录,即会搜索所有子目录。

常用用法:

命令 说明 示例( . 表示当前目录,~ 表示用户目录)
find 路径 -name 文件名 按文件名查找(区分大小写) find /home -name "*.txt"
find 路径 -iname 文件名 按文件名查找(不区分大小写) find . -iname "README.md"
find 路径 -type [f] find 路径 -type [d] find 路径 -type [l] 按类型查找: f=普通文件, d=目录, l=符号链接 find /tmp -type d find . -type f
find 路径 -mtime -n find 路径 -mtime +n 按修改时间查找: -n 代表 n 天内修改过, +n 代表 n 天前修改过 find . -mtime -7(最近7天)
find 路径 -atime ±n 按访问时间查找: 类似 -mtime,但基于最后访问时间 find ~ -atime +100
find 路径 -size ±n[单位] 按文件大小查找: 单位:c 为字节, k为KB,M为MB,G为GB find / -size +1G(大于1GB)
find 路径 ... -a ... find 路径 ... -o ... 按组合条件查找: 默认是 -a(AND);用 -o 表示 OR find . -name "*.log" -o -name "*.tmp"
find 路径 -not -path 文件名 排除匹配的路径 find /var -not -path "/var/cache/*"
find ... -exec 命令 {} \; 对每个结果执行命令({} 代表文件名) find . -name "*.bak" -exec rm {} \; find . -type f -exec chmod 644 {} \;
find ... -delete 直接删除匹配项(慎用!) find /tmp -name "*.tmp" -delete
find 路径 -maxdepth N 限制搜索深度,最多深入 N 层目录 find . -maxdepth 1 -name "*.sh"(仅当前目录)

grep(查找内容)

最常用的是 grep -nrgrep -ir

grep 用于查找某个内容在哪些文件中。

常用用法:

命令语法 说明 典型示例
grep "关键词" 文件名 在文件中查找包含关键词的行(区分大小写) grep "error" /var/log/syslog
grep -i "关键词" 文件名 在文件中查找包含关键词的行(不区分大小写) grep -i "warning" app.log
grep -n "关键词" 文件名 在文件中查找包含关键词的行,并输出匹配的行号 grep -n "TODO" script.sh
grep -v "关键词" 文件名 反向匹配,显示不包含关键词的行 grep -v "^#" config.conf(过滤注释)
grep -r "关键词" 目录/ 递归搜索目录下所有文件 grep -r "password" ~/project/
grep -l "关键词" 文件名... 只输出包含关键词的文件名 grep -l "main" *.c
grep -c "关键词" 文件名 输出匹配的总行数 grep -c "404" access.log
grep -w "关键词" 文件名 仅匹配完整单词(避免 cat 匹配到 category grep -w "root" /etc/passwd
grep -A N -B M "关键词" 文件 grep -C N "关键词" 文件 -A N:显示匹配行后 N 行 -B M:显示匹配行前 M 行 -C N:前后各 N 行 grep -A 2 -B 1 "ERROR" log.txt grep -C 3 "panic" kernel.log
grep -f 关键词文件 文件 从文件中读取多个搜索关键词 grep -f keywords.txt data.txt
grep --color=auto "关键词" 文件 终端中高亮显示匹配部分(多数系统默认开启) grep --color=always "success" output.log

file(查看文件真实类型)

不依赖文件扩展名,而是通过读取文件 头部 magic number(魔数) 判断类型,比扩展名更可靠。

常用用法:

命令 作用 示例 输出示例
file 文件名 检测单个文件的真实类型 file document.pdf document.pdf: PDF document, version 1.5
file 文件1 文件2 ... 同时检测多个文件 file script.sh image.jpg script.sh: Bourne-Again shell script... image.jpg: JPEG image data...
file * 检测当前目录下所有文件 file /etc/* (列出每个文件的类型)
file -b 文件名 简洁输出(仅显示类型,不显示文件名) file -b photo.png PNG image data, 1920 x 1080, ...
file -f 文件列表 从文本文件中读取文件路径并批量检测 file -f filelist.txt filelist.txt 每行一个路径)
file -L 文件 跟随符号链接,检测目标文件类型 file -L mylink 显示链接指向的真实文件类型
file -z 文件 尝试检测压缩文件内部内容类型 file -z archive.tar.gz archive.tar.gz: POSIX tar archive (gzip compressed data)

当有些文件没标扩展名的时候,就可以用此命令查看:

shell 复制代码
file README

rm(删除,删除文件或整个目录)

rm 删除不可恢复!删除需谨慎!删除前先用 ls 确认要删的内容。

命令 作用 示例
rm 文件名 删除一个或多个文件 rm file.txt
rm -r 目录rm -R 目录 递归删除目录及其内容,删除目录必须加 -r rm -r old_project/
rm -f 强制删除 ,不提示确认 rm -f A.txt rm -rf temp/
rm -rf 目录 强制删除目录及其内容 rm -rf old_project/
rm -i 每次删除前提示确认,防止误删 rm -i *.tmp
rm -v 显示删除过程("删了什么") rm -rv cache/
rm -- 明确结束选项解析(处理以 - 开头的文件名) rm -- -badfilename
rmdir(补充) 递归删除目录及其内容(等效于 rm -r rmdir old_project/

mkdir(创建文件夹)

(文件夹就属于目录)

命令 作用 示例
mkdir 目录名 创建一个新目录 mkdir docs
mkdir dir1 dir2 ... 同时创建多个同级目录 mkdir src bin logs
mkdir -p dir1/dir2 递归创建目录(自动创建路径中缺失的父目录),✅ 最常用 mkdir -p project/src/utils
mkdir -v 显示创建过程("创建了哪些目录") mkdir -pv backup/2024/Q1

mv(移动/重命名,文件或目录)

常用用法:

命令 作用 示例
mv 源文件 目标文件 重命名文件(同目录下),若目标存在,默认覆盖 mv old.txt new.txt
mv 文件 目录/ 将文件移动到指定目录 mv report.pdf ~/Documents/
mv dir1 dir2 dir2 不存在 → 重命名目录 若 dir2 存在 → 将 dir1 移入 dir2 mv project_v1 project_final
mv -i 覆盖前交互式提示确认 mv -i file.txt existing.txt
mv -v 显示移动/重命名过程 mv -v *.log archive/
mv -f 强制覆盖(不提示) mv -f temp.bak config
mv -n 不覆盖已存在的文件 mv -n draft.txt final.txt
mv -ni 安全移动

ifconfig(显示/配置网络,已被弃用)

初次使用此命令时,可能会提示找不到此命令,说明未安装相关软件包,在终端运行 sudo apt install net-tools 安装即可

虽然已被弃用,但可用于兼容低版本 Linux

(网络接口就是网卡)

常用用法:

命令 作用 示例
ifconfig 显示 所有 活动网络接口的配置信息,仅显示"UP"状态的接口 ifconfig
ifconfig -a 显示所有网络接口(包括未激活的网卡) ifconfig -a
ifconfig 接口名 显示指定接口的详细信息 ifconfig eth0 ifconfig lo
sudo ifconfig 接口 up 启用指定网络接口,需要 root 权限 sudo ifconfig eth0 up
sudo ifconfig 接口 down 禁用指定网络接口,需要 root 权限 sudo ifconfig wlan0 down
sudo ifconfig 接口 reload 重启指定网络接口,需要 root 权限 sudo ifconfig wlan0 reload
sudo ifconfig 接口 IP地址 临时设置 IPv4 地址,重启后失效 sudo ifconfig eth0 192.168.1.100
sudo ifconfig 接口 netmask 子网掩码 设置 IP + 子网掩码,手动配置网络时使用 sudo ifconfig eth0 192.168.1.100 netmask 255.255.0.0

ip(显示/配置网络,代替 ifconfig)

ip 是现代 Linux 网络配置的标准工具,属于 iproute2 套件,功能强大且持续维护,替代老旧的 ifconfigroute 等。

选项等效简写及其含义:

  • ip addrip a :显示/管理 IP 地址
  • ip linkip l :管理网络接口状态
  • ip routeip r :查看/管理路由表
  • ip neighip n :查看 ARP / NDP 表

常用用法:

完整命令 作用 示例
ip addr show 显示 所有 网络接口的 IP 地址(IPv4/IPv6)
ip addr show dev 接口名 仅显示指定接口的 IP 配置 ip addr show dev wlan0
sudo ip addr add 192.168.1.100/24 dev 接口名 为指定接口添加一个 IPv4 地址(临时生效),需要 root 权限 sudo ip addr add 10.0.0.5/16 dev ens33
sudo ip addr del 192.168.1.100/24 dev 接口名 删除接口上的指定 IP 地址,需要 root 权限 sudo ip addr del 2001:db8::1/64 dev eth0
ip link show 列出 所有 网络接口及其状态(UP/DOWN)
ip link show 接口名 仅显示指定接口的状态信息 ip link show lo
sudo ip link set 接口名 up 启用(激活)指定网络接口,需要 root 权限 sudo ip link set wlan0 up
sudo ip link set 接口名 down 禁用(关闭)指定网络接口,需要 root 权限 sudo ip link set eth1 down
ip route show 显示当前系统的完整路由表
ip route show default 仅显示默认网关
sudo ip route add 10.0.0.0/8 via 192.168.1.1 添加一条静态路由,需要 root 权限 sudo ip route add 172.16.0.0/12 via 192.168.10.1 dev eth0
sudo ip route del 10.0.0.0/8 删除指定的路由条目,需要 root 权限 sudo ip route del default
ip neigh show 显示 ARP(IPv4)或 NDP(IPv6)邻居缓存表 ip neigh show
ip neigh show dev eth0 仅显示某接口的邻居表 ip neigh show dev wlan0
ip -br addr show 以简洁格式(brief)显示接口和 IP ip -br a
ip -br link show 以简洁格式显示接口状态 ip -br l

常用组合:

需求 推荐命令
查看本机所有 IP 地址 ip aip addr show
查看简洁 IP 列表 ip -br a-br = brief)
启用网卡 sudo ip link set eth0 up
临时设置静态 IP sudo ip addr add 192.168.1.10/24 dev eth0
删除 IP 地址 sudo ip addr del 192.168.1.10/24 dev eth0
查看默认网关 ip route show default
查看完整路由表 ip route show
查看 ARP 缓存 ip neigh show

man(系统帮助命令)

Ubuntu 系统中有很多命令,这些命令都有不同的格式,不同的格式对应不同的功能,通过 man 命令可以查看其它命令的语法格式、主要功能、主要参数说明。

输入:

shell 复制代码
man 命令

然后回车,就会打开这个命令的详细说明,按 q 键退出到终端。

reboot(系统重启命令)

在终端中输入命令 reboot 然后点击回车键即可重启 Ubuntu 系统,当然也有右上角图形化界面的按钮。

poweroff(关机命令)

在终端中输入命令 poweroff 然后按下回车键即可关闭 Ubuntu 系统,当然也有右上角图形化界面的按钮。

sync(数据同步写入磁盘)

强制将内存中缓存的文件系统数据立即写入磁盘,确保数据持久化。

Linux 等操作系统为提升性能,延长磁盘寿命,会将写操作 暂存于内存缓存(page cache) ,然后异步写入磁盘。若突然断电、拔设备或崩溃,未写入的数据会丢失sync 强制刷盘,确保:文件内容真正保存到存储设备,元数据(如文件大小、时间戳)一致。但也不要滥用 ,频繁调用 sync严重降低 I/O 性能(破坏缓存优势)。

常用用法:

命令 作用说明 典型场景
sync 同步所有待写入磁盘的数据 在关机/拔 USB 前执行,防止数据丢失
sync /path/to/file (部分系统支持)仅同步指定文件所在文件系统 较少使用;多数发行版忽略参数,仍同步全部

典型使用场景:

场景 操作
安全移除 USB 设备前 sync && sudo umount /dev/sdb1
关键日志写入后立即持久化 echo "Critical event" >> log.txt && sync
系统关机/重启前(手动) sync && sudo shutdown -h now
调试文件系统行为 在测试脚本中插入 sync 确保写入完成

du(查看文件或目录所占磁盘空间)

全称:disk usage

常用用法:

命令 作用 示例 注意事项
du 显示当前目录下每个子目录/文件的磁盘使用量(默认单位:KB) du 递归列出所有子目录,输出较冗长
du -h 以人类可读格式显示(K/M/G) du -h ✅ 最常用选项
du -s 仅显示总计大小(summary),不列子项 du -s /var/log 常与 -h 联用
du -sh 显示目录总大小(易读格式) du -sh ~/Documents ✅ 日常查看目录大小首选
du -a 显示所有文件和目录(包括普通文件) du -ah /tmp 默认只显示目录
du -c 在最后显示总和(total) du -ch *.log -c = --total
du -t SIZE 仅显示大于指定大小的条目 du -h -t 100M /var 用于找大文件/目录(GNU coreutils ≥ 8.24)
du --exclude="模式" 排除匹配的文件或目录 du -sh --exclude="*.cache" ~ 支持通配符(如 *.tmp, node_modules
du -L 跟随符号链接(默认不跟随) du -Lsh mylink 谨慎使用,可能重复计算

gedit( Linux 下的文本编辑器)

全称:GNOME Editor

gedit 是 Linux 桌面系统下的图形化文本编辑器,可以在文件夹中找到文件,右键选择用 gedit 打开(用文本编辑器打开),也可以在终端使用命令打开文件。

常用用法:

命令 作用 示例
gedit 文件名 打开或创建指定文件(图形界面) gedit notes.txt
gedit file1 file2 同时打开多个文件(每个文件在独立标签页) gedit config.conf /etc/hosts
gedit --new-window 文件 在新窗口中打开文件(而非新标签) gedit --new-window log.txt

ps(查看当前时刻的系统进程)

常用用法:

命令 作用 示例 备注
ps 显示当前终端会话中的进程(非常有限) ps 通常只显示 shell 和当前命令
ps aux BSD 风格:显示所有用户的所有进程 `ps aux grep nginx`
ps -ef POSIX / Unix 风格:显示所有进程(类似 ps aux `ps -ef grep sshd`
ps -u 用户名 显示指定用户的所有进程 ps -u alice 可用于审计或资源排查
ps -p PID (或 ps -q PID 显示指定 PID 的进程信息 ps -p 1234 快速查看某进程状态
ps --forest 以树状结构显示进程父子关系 ps auxfps -ef --forest 直观查看进程派生关系
ps -o 自定义字段 自定义输出列(如 pid, comm, %cpu, %mem, start, cmd 等) ps -eo pid,ppid,cmd,%mem --sort=-%mem 适合脚本或重点监控
ps --sort 字段 按指定字段排序(- 表示降序) ps aux --sort=-%cpu 找出 CPU/内存占用高的进程

top(查看实时系统进程)

作用相当于 windows 下的任务管理器,默认大约 3 秒钟更新一次进程情况

常用用法:

类别 操作 / 快捷键 作用说明 备注
启动命令 top 启动实时进程监控(默认每 3 秒刷新) 普通用户即可运行
退出 q 退出 top ---
刷新间隔 d → 输入秒数 修改刷新间隔(如 1 表示 1 秒) 支持小数:0.5
按 CPU 排序 P(大写) 默认排序方式:按 CPU 使用率降序 ---
按内存排序 M(大写) 按 RES(物理内存) 降序排列 快速找内存大户
按 PID 排序 N(大写) 按进程 ID 升序排列 ---
按运行时间排序 T(大写) 按 TIME+(累计 CPU 时间)降序 找长期运行进程
显示/隐藏空闲进程 i 切换是否显示 CPU 使用率为 0 的进程 减少干扰信息
杀死进程 k → 输入 PID → 回车 发送 SIGTERM(可被拦截) 可指定信号(默认 15) 安全终止;若无效再用 kill -9
改变进程优先级(nice) r → 输入 PID → 输入 nice 值 调整进程调度优先级(-20 ~ 19) 需权限;值越小优先级越高
显示完整命令行 c 切换显示 COMMAND(含路径和参数) 默认只显示进程名
显示/隐藏线程 H 切换是否显示线程(LWP) 用于多线程程序分析
选择特定用户进程 u → 输入用户名 只显示该用户的进程 u www-data
保存配置 W(大写) 将当前视图设置(排序、列等)保存到 ~/.toprc 下次启动自动生效

echo(在终端或脚本中输出一行文本或变量内容)

核心作用:

  • 显示字符串
  • 输出变量值
  • 向文件写入内容(配合重定向)
  • 调试脚本(打印中间状态)

基本语法:

bash 复制代码
echo [选项] [字符串或变量]

常见用法:

用法 示例 说明
输出普通文本 echo "Hello, World!" 输出:Hello, World!
输出变量值 name="Alice"; echo $name 输出:Alice
输出带换行的内容 echo -e "Line1\nLine2" -e 启用转义字符(如 \n 换行、\t 制表符)
禁止末尾换行 echo -n "No newline" 默认 echo 会在末尾加换行,-n 取消
向文件写入 echo "log entry" >> app.log 追加内容到文件(> 覆盖,>> 追加)
生成空文件 echo > empty.txt 创建或清空文件

注意事项:

  1. 引号影响变量和通配符展开

    bash 复制代码
    echo *.txt      # Shell 展开为所有 .txt 文件名
    echo "*.txt"    # 原样输出字符串 "*.txt"
  2. echo 本身不处理通配符或变量------是 Shell 处理的
    echo 只负责"打印它收到的参数"。

  3. echo 就是 Shell 的"打印"命令------简单、直接、无处不在。 它是理解 Shell 工作机制(如变量展开、重定向、引号作用)的入门钥匙。


相关推荐
·醉挽清风·2 小时前
学习笔记—Linux—文件IO
linux·服务器·学习
宁波阿成2 小时前
OpenClaw 在 Ubuntu 22.04.5 LTS 上的安装与问题处理记录
java·linux·ubuntu·openclaw·龙虾
徐子元竟然被占了!!2 小时前
Linux的cat
linux·运维·服务器
坐吃山猪4 小时前
Python进度条
linux·服务器·python
IMPYLH5 小时前
Linux 的 b2sum 命令
linux·运维·服务器·bash
celeste03105 小时前
Redis Summary
linux·运维·服务器·redis·笔记
Sylvan.C5 小时前
Windows+Ubuntu 双系统安装超详细保姆级教程2026,包括系统安装、英伟达独显驱动安装以及双系统时间同步的所有过程
linux·运维·ubuntu
伴我与影5 小时前
Ubuntu 安装 NVIDIA 显卡驱动
linux·运维·ubuntu
unsynchronized5 小时前
OpenClaw 安装指南:Linux 与 Windows 系统详细教程
linux·运维·windows·ai