首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Linux 基本指令详解

Linux 基本指令详解

作者头像
Nullmian
发布2025-12-24 15:09:35
发布2025-12-24 15:09:35
1920
举报

一、操作系统概述

1. 什么是操作系统?
  • 操作系统是一款专门进行软硬件资源 “管理” 的软件系统,它通过对下层硬件资源的高效管理和调度,为上层应用程序提供稳定、统一的运行环境。
  • 操作系统本质上是一个"管理者",负责协调和管理计算机系统中的所有硬件和软件资源。
2. 操作系统在计算机体系中的位置与贯穿作用

在计算机软硬件层次结构中,操作系统处于承上启下的关键位置,贯穿整个计算栈:

代码语言:javascript
复制
应用软件 (MS Office、VS Code、浏览器等)
        ↓ ← 系统调用接口(贯穿点)
    操作系统 (Windows、Linux、macOS) ← 核心管理者
        ↓ ← 设备驱动接口(贯穿点)
    设备驱动 (网卡、声卡、显卡驱动)
        ↓ ← 硬件抽象层(贯穿点)
      硬件 (CPU、内存、硬盘、外设)

几乎我们所有的软件行为,最终都与操作系统直接或间接相关,因为:

  • 资源访问必须通过操作系统:应用程序不能直接访问硬件
  • 系统调用是唯一入口:所有硬件操作都需要通过系统调用接口
  • 操作系统提供抽象:隐藏硬件细节,提供统一的编程接口
  • 操作系统确保安全:防止恶意程序破坏系统或其他程序
3. 操作系统的必要性

早期计算机直接通过硬件电路控制,随着硬件功能不断完善和结构复杂化,需要专门的软件来协助硬件控制和管理,操作系统应运而生。它通过设备驱动实现模块化的硬件管理。




二、操作系统类比理解

企业架构类比
  • 应用软件:各部门员工(完成具体工作任务)
  • 操作系统:公司总经理(统筹规划,分配资源)
  • 设备驱动:部门经理(将总经理指令转化为具体任务)
  • 硬件:基层员工(实际执行具体操作)
优秀操作系统的衡量标准
  • 稳定性:能够长时间持续运行不崩溃
  • 高效性:资源利用率高,响应速度快
  • 安全性:提供良好的安全保护和隔离机制



三、Linux 操作系统特点

1. 交互方式
  • 命令行界面 (CLI):Linux 的主要交互方式,高效且灵活
  • 图形化界面 (GUI):可选组件,如 GNOME、KDE 等

无论是图形化界面还是命令行界面,其本质上都是一样的 → 而命令行操作更加贴近操作系统

2. 设计哲学
  • 一切皆文件:硬件设备、进程等都以文件形式呈现(**比如:**显示器、键盘、普通文件……)
  • 小型、单一目的的程序:每个程序只做好一件事
  • 通过管道连接程序:组合简单程序完成复杂任务

凡是能被读写的都可以认为是文件




四、Linux 基础命令详解

理解Linux指令的本质
  • 指令就是可执行程序:Linux是由C语言编写的,指令是在系统中特定路径下存在的可执行文件
  • 指令的执行过程:系统会在预定路径(如/usr/bin/)中查找对应指令
  • 自定义指令:将自己写的可执行程序放入系统搜索目录,就可以直接通过文件名运行
  • 查看指令路径:使用which [指令]查找指令所在路径
  • 指令别名:使用alias [name]=[指令]可以临时重命名指令

ls -l == ll 的原因ll 通常是 ls -l 的预设别名(alias),用于简化操作。可以使用 alias 命令查看系统中的所有指令别名。



1. 文件目录操作命令
ls - 列出目录内容
代码语言:javascript
复制
ls [选项] [目录或文件]
  • 选项
    • -l:详细列表显示(可简写为 ll
    • -a:显示所有文件(包括隐藏文件)
    • -d:显示目录本身而非内容
    • -F:在每个文件名后附上一个字符说明文件类型
  • 组合使用ls -la(显示所有文件的详细信息)

指令是可以携带选项的 → 通过选项获得更加详细的输出


通配符的使用
  • *:匹配任意字符
  • [文件名].*:匹配指定名称的任何扩展名文件
  • *.[文件后缀]:匹配指定后缀的任何文件

案例

代码语言:javascript
复制
ls *          # 列出所有文件
ls test.*     # 列出所有名为test的文件
ls *.c        # 列出所有.c后缀的文件

文件类型标识
  • d:目录文件
  • -:普通文件
  • .:隐藏文件(以点开头的文件)
  • *:可执行的普通文件(使用ls -F时显示)
  • /:目录(使用ls -F时显示)
  • l:符号链接文件
  • b:块设备文件
  • c:字符设备文件


2. 目录导航命令
pwd - 显示当前目录
代码语言:javascript
复制
pwd  # 打印当前工作目录

cd - 切换目录
代码语言:javascript
复制
cd [目录路径]
  • 常用路径
    • cd ..:返回上级目录
    • cd ~:返回用户家目录
    • cd -:返回上一个访问的目录
    • cd /:返回根目录
  • 路径概念:
    • 绝对路径:从根目录(/)开始的完整路径,具有唯一性
    • 相对路径:从当前目录开始的路径,随工作目录变化
    • 选择原则
      • 配置文件、脚本中建议使用绝对路径
      • 命令行操作常用相对路径提高效率

案例

代码语言:javascript
复制
cd ..                  # 返回上级目录(相对路径)
cd /home/user/linux/   # 使用绝对路径切换
cd ../day02/           # 使用相对路径切换


3. 文件操作命令
touch - 创建空文件
代码语言:javascript
复制
touch filename.txt  # 创建新文件或更新文件时间戳

mkdir - 创建目录
代码语言:javascript
复制
mkdir [选项] [dirname]
  • 选项
    • -p:递归创建多级目录
  • 案例:
代码语言:javascript
复制
mkdir dirname      # 创建单个目录
mkdir -p a/b/c/d   # 递归创建多级目录

rmdir - 删除空目录
代码语言:javascript
复制
rmdir [选项] [dirname]
  • 选项
    • -p:递归删除多级空目录
  • 案例:
代码语言:javascript
复制
rmdir dirname      # 删除空目录
rmdir -p a/b/c     # 递归删除空目录链

rm - 删除文件或目录
代码语言:javascript
复制
rm [选项] [filename/dirname]
  • 选项
    • -r:递归删除删除目录及其下所有文件
    • -f:强制删除,不提示
    • -i:删除前逐一询问确认
  • 案例:
代码语言:javascript
复制
rm filename        # 删除文件
rm -r dirname      # 递归删除目录及其内容
rm -f filename     # 强制删除,不提示
rm -i filename     # 删除前询问确认

注意rm是一个危险命令,Linux中没有回收站机制,删除后难以恢复



4. 文件拷贝与移动命令
cp - 拷贝文件/目录 → 目标文件/目录
代码语言:javascript
复制
cp [选项] [源文件或目录] [目标文件或目录]

目标目录下不能有重名文件

  • 选项
    • -f:强制复制,覆盖已存在文件
    • -i:覆盖前询问用户
    • -r-R:递归复制目录及其内容

可以发现它和rm的选项几乎一模一样

  • 案例:
代码语言:javascript
复制
cp file1.txt file2.txt                      # 拷贝单个文件
cp -r dir1/ dir2/                           # 递归拷贝目录
cp file1.txt file2.txt /home/user/dest/     # 拷贝多个文件到目录
cp file1.txt /nonexistent_dir/              # 错误:目标目录不存在

补充说明

  • 当使用 cp 命令同时指定多个源文件/目录时,最后一个参数必须是已存在的目标目录
  • 系统会将所有指定的源文件/目录复制到该目标目录中
  • 如果最后一个参数不是目录或目录不存在,命令将执行失败并报错

mv - 剪切并重命名文件或目录
代码语言:javascript
复制
mv [选项] 源文件或目录 目标文件或目录
  • 选项
    • -f:强制移动,覆盖已存在文件
    • -i:覆盖前询问用户
  • 案例
代码语言:javascript
复制
mv file.txt /path/to/destination/     #移动文件
mv oldname.txt newname.txt            #重命名文件
mv file.txt /path/to/newname.txt      #移动并重命名

所有的 mv 操作都可以统一视为**“剪切并重命名”** 重命名文件 → 将该文件剪切并重命名于当前目录 mv oldname.txt newname.txtmv oldname.txt ./newname.txt/



5. 文件查看与编辑命令
cat - 查看目标文件内容
代码语言:javascript
复制
cat [选项] [文件名]
  • 选项
    • -n:给所有行编号
    • -b:给非空行编号
    • -s:不输出连续空行
  • 适用场景:
    • 适合查看小文件内容
  • 案例:
代码语言:javascript
复制
cat                   # 键盘输入 1,则显示器输出 1

cat filename.txt      # 查看文件内容

当 cat 后面无目标时,则默认从输入设备读取数据


nano - 简单文本编辑器
代码语言:javascript
复制
nano filename  # 使用nano编辑器

快捷键:Ctrl+X退出,Y保存,N不保存,Enter确定


输入/输出重定向命令
cat - 输入重定向
  • 输入重定向 <:从指定文件读取数据
代码语言:javascript
复制
cat < [文件名]        # 读取文件内容

cat < file.txt       # 从文件读取

现阶段我们可以近似认为 cat filename == cat filename


echo - 输出重定向
  • 输出重定向 >:清空目标文件后写入新内容
  • 追加重定向 >>:在目标文件末尾追加内容
代码语言:javascript
复制
echo [字符串] (> [文件名])  # 打印字符串或写入文件

echo "hello" > file.txt    # 覆盖写入
echo "world" >> file.txt   # 追加写入

//也可以用 printf -- 默认不带 换行符

使用 输出重定向 >时, 若目标文件不存在则会自动创建一个**(类touch 功能)**

  • 功能
    • 输出字符串到标准输出或文件
  • 特点
    • 默认带 换行符(与printf不同)
    • echo之后的内容统一当字符串处理 (echo helloecho "hello")

所以echo指令默认将信息输向显示器这个文件,重定向就是改变其目标文件 — Linux 中一切皆文件


指令操作路径的通用性:

许多指令除了可以用选项修饰外,还可以直接操作指定路径下的文件:

代码语言:javascript
复制
# 使用ls查看指定路径的文件
ls [目录]/[文件名]        # 查看指定路径下的文件
ls ../[文件名]           # 查看上级目录中的文件

# 使用rm删除指定路径的文件  
rm [目录]/[文件名]       # 删除指定路径下的文件
rm ../[文件名]          # 删除上级目录中的文件
  
# 其他命令同样适用
cat /path/to/file      # 查看指定路径文件内容
mkdir /path/to/dir    # 在指定路径创建目录

more - 分页查看文件
代码语言:javascript
复制
more [选项] [文件]

cat 功能类似,但more更适合用于查看大文本文件,支持分页显示

  • 选项
    • -n 对输出的所有行编号
  • 操作
    • 按回车逐行下翻**(不支持上翻)**,按q退出

less - 高级分页查看
代码语言:javascript
复制
less [参数] [文件]

比more更强大,支持上下翻页和搜索

  • 选项
    • -i:忽略搜索时的大小写
    • -N:显示每行的行号
  • 操作
    • /字符串:向下搜索
    • ?字符串:向上搜索
    • n:重复前一个搜索
    • N:反向重复前一个搜索
    • q:退出

head - 查看文件开头
代码语言:javascript
复制
head [参数] [文件]

显示文件开头部分,默认显示前10行

  • 选项
    • -n<行数> 指定显示的行数

tail - 查看文件末尾
代码语言:javascript
复制
tail [参数] [文件]

显示文件末尾部分,默认显示后10行

  • 选项
    • -n<行数>:指定显示的行数
    • -f:循环读取,实时监控文件变化(常用于查看日志)

组合使用案例

代码语言:javascript
复制
# 获取文件的第50行内容
seq 1 100 > test # 生成1到100的序列装入test


//不用 less 搜索如何获取文件中间部分内容?

# 方法1:使用临时文件
head -50 test > tmp
tail -1 tmp

# 方法2:使用管道 |是
head -50 test | tail -1

管道也可以看成一个临时文件,用于传输数据 — 右侧 → 左侧 支持流水线工作



6. 文件搜索命令
find - 在指定路径下查找文件
代码语言:javascript
复制
find [目录] [选项] [操作]

find命令功能强大,提供了相当多的查找条件 ---- 只要有访问权限就能查

  • 常用选项
    • -name:按照文件名查找文件
  • 特点
    • 即使系统中含有网络文件系统(NFS),find命令在该文件系统中同样有效
    • 遍历大的文件系统可能会花费很长时间,建议放在后台执行
    • 功能强大,支持多种复杂的查找条件组合

案例:

代码语言:javascript
复制
// 按文件名匹配
find ~ -name test.c           # 从 /home 目录开始查找名为 test.c 的文件

// 按文件后缀匹配
find ~ -name *.c              # 从 /home 目录开始查找文件后缀为 .c 的文件

// 在其他路径查找
find /usr/bin -name ls        # 从 /usr/bin 目录开始查找名为 ls 的文件

注意:find命令可能访问磁盘,消耗资源较多


which - 在指令路径下查找(例如:/usr/bin……)
代码语言:javascript
复制
which [选项] [命令名]

which命令用于查找可执行文件的绝对路径

  • 常用选项
    • -a:显示所有匹配的路径,而不仅仅是第一个
  • 特点
    • 专门用于查找可执行文件(命令)
    • 只在PATH环境变量指定的路径中查找
    • 查找速度快,资源消耗少

案例:

代码语言:javascript
复制
which ls              # 查找ls命令的路径
which grep            # 查找grep命令的路径
which -a python       # 查找所有名为python的可执行文件路径
which git             # 查找git命令的路径

whereis - 在系统特定路径下查找
代码语言:javascript
复制
whereis [选项] [文件名]

whereis命令用于查找程序的二进制文件、源代码文件和手册页

  • 常用选项
    • -b:只查找二进制文件
    • -m:只查找手册页文件
    • -s:只查找源代码文件
  • 特点
    • 功能介于which和find之间
    • 在标准系统目录中查找(如/bin, /usr/bin, /usr/local/bin等)
    • 可以同时查找二进制文件、源代码和手册页
    • 查找速度较快

案例:

代码语言:javascript
复制
whereis ls            # 查找ls相关的所有文件
whereis -b gcc        # 只查找gcc的二进制文件
whereis -m printf     # 查找printf的手册页
whereis python        # 查找python相关的所有文件

总结对比:

  • find:功能最强大,可在任意指定路径深度搜索,支持复杂条件
  • which:专门用于查找可执行命令,只在PATH路径中搜索
  • whereis:在系统标准目录中查找程序的二进制、源码和手册页


grep - 文本搜索指令
代码语言:javascript
复制
grep [选项] [目标字符串] [目标文件]

grep命令是强大的文本搜索工具:在文本文件中搜索字符串,并将匹配行打印出来

  • 常用选项
    • -i:忽略大小写的不同,所以大小写视为相同
    • -n:顺便输出行号
    • -v:反向选择,亦即显示出没有’搜寻字符串’内容的那一行

案例:

代码语言:javascript
复制
grep "hello" file.txt                    # 在file.txt中搜索包含"hello"的行
grep -i "error" logfile.log              # 忽略大小写搜索"error"
grep -n "function" script.js             # 显示匹配行及行号
grep -v "debug" config.conf              # 显示不包含"debug"的行


7. 压缩与解压命令
zip/unzip - ZIP格式压缩解压
代码语言:javascript
复制
# 压缩
zip 压缩文件.zip 目录或文件

# 解压  
unzip 压缩文件.zip [-d 目标目录]
  • 常用选项
    • -r:递归处理,将指定目录下的所有文件和子目录一并处理

案例:

代码语言:javascript
复制
zip test2.zip test2/*           # 将test2目录压缩
unzip test2.zip -d /tmp         # 解压到tmp目录

tar - 打包/解包命令
代码语言:javascript
复制
tar [-cxtzjvf] 文件与目录... [参数]

参数

  • -c:建立一个压缩文件的参数指令(create的意思)
  • -x:解开一个压缩文件的参数指令
  • -t:查看tarfile里面的文件
  • -z:是否同时具有gzip的属性?亦即是否需要用gzip压缩?
  • -j:是否同时具有bzip2的属性?亦即是否需要用bzip2压缩?
  • -v:压缩的过程中显示文件
  • -f:使用档名,在f之后要立即接档名
  • -C:解压到指定目录

案例:

代码语言:javascript
复制
# 将整个/etc目录下的文件全部打包
tar -cvf /tmp/etc.tar /etc              # 仅打包,不压缩!
tar -zcvf /tmp/etc.tar.gz /etc          # 打包后,以gzip压缩
tar -jcvf /tmp/etc.tar.bz2 /etc         # 打包后,以bzip2压缩

# 查阅tar文件内容
tar -ztvf /tmp/etc.tar.gz

# 解压缩
tar -zxvf /tmp/etc.tar.gz -C /usr/local/src

# 只解压特定文件
tar -zxvf /tmp/etc.tar.gz etc/passwd

# 备份并保留权限
tar -zxvpf /tmp/etc.tar.gz /etc

特别注意

  • 参数f之后的文件档名是自己取的,习惯上用.tar作为辨识
  • 加z参数则以.tar.gz.tgz代表gzip压缩过的tar file
  • 加j参数则以.tar.bz2作为附档名


8. 时间与日期命令
date - 显示或设置时间
代码语言:javascript
复制
date [选项]... [+格式]

显示格式

  • %H : 小时(00…23)
  • %M : 分钟(00…59)
  • %S : 秒(00…61)
  • %X : 相当于 %H:%M:%S
  • %d : 日 (01…31)
  • %m : 月份 (01…12)
  • %Y : 完整年份 (0000…9999)
  • %F : 相当于 %Y-%m-%d

设置时间(需要root权限):

代码语言:javascript
复制
date -s "2023-10-15 12:30:00"

date +%F(%Y-%m-%d)_%H:%M:%S  

时间戳操作

  • 概念:从1970年年1月1日午夜(凌晨12:00)开始,累积到现在的秒数
  • 意义:提供统一的时间标准,避免时区差异带来的问题
代码语言:javascript
复制
  date +%s              # 获取当前时间戳
  date -d@1508749502    # 时间戳转换为时间

cal - 显示公历日历
代码语言:javascript
复制
cal [选项] [[[日] 月] 年]
  • 常用选项:
    • -3:显示系统前一个月,当前月,下一个月的月历
    • -j:显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
    • -y :显示当前年份的日历

案例:

代码语言:javascript
复制
cal            # 默认查看当前月日历

cal 2025       # 查看2025年整年日历
cal 9 2025     # 查看2025年9月日历
cal 18 9 2025  # 查看2025年9月18号日历

cal -3         # 查看前一月、当前月、下一月的日历
cal -y         # 查看当前年整年日历


9. 计算命令
bc - 浮点运算器
代码语言:javascript
复制
bc  # 进入计算器模式

功能:bc命令可以很方便的进行浮点运算,支持交互式计算。



10. 系统信息命令
uname - 系统信息查看
代码语言:javascript
复制
uname [选项]

功能:uname用来获取电脑和操作系统的相关信息。

常用选项

  • -a--all:详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

特别选项

  • uname -r:显示内核版本信息


11. 程序编译与执行
gcc - C程序编译
代码语言:javascript
复制
gcc source.c -o output  # 编译C程序
程序执行
代码语言:javascript
复制
./output  # 执行编译后的程序


12. 用户信息命令
whoami - 显示当前用户
代码语言:javascript
复制
whoami  # 显示当前登录用户名
用户目录结构
  • root用户:家目录为 /root(只能有一个管理员)
  • 普通用户:家目录为 /home/username(可以有多个用户)


13. 目录结构可视化
tree - 树状显示目录结构
代码语言:javascript
复制
# 首先安装tree工具(需要root权限)
yum install -y tree

# 使用tree命令
tree [目录名]  # 以树状形式显示目录结构


14. 清屏命令
clear - 清空终端屏幕
代码语言:javascript
复制
clear  # 清空当前终端显示内容


15.关机命令
代码语言:javascript
复制
shutdown [选项] 

常见选项

  • -h:将系统的服务停掉后,立即关机
  • -r:在将系统的服务停掉之后就重新启动
  • -t sec:-t后面加秒数,亦即『过几秒后关机』的意思


15. 手册查看命令

Linux中有很多选项,我们不可能全记住,此时我们就能通过查阅数据手册来获取帮助

man - 查阅指令/函数的手册文档
代码语言:javascript
复制
man [选项] [命令/函数]
  • 选项
    • -k:根据关键字搜索联机帮助
    • num:只在第num章节找
    • -a:显示所有章节的内容
  • 手册章节
    1. 普通命令
    2. 系统调用(如open,write)
    3. 库函数(如printf,fread)
    4. 特殊文件(/dev下的设备文件)
    5. 文件格式(如passwd文件的字段含义)
    6. 游戏
    7. 附件和全局变量
    8. 系统管理命令(只能由root使用)

若不指定章节,man会从第1章开始逐个搜索,直到找到匹配项 使用Ctrl + Z退出手册




五、Linux 目录结构理解

树形目录结构

Linux 采用树形目录结构,特点包括:

  • 根目录(/)为唯一起点
  • 中间节点都是非空目录
  • 叶子节点是文件或空目录
  • 路径具有唯一性(每个节点只有一个父节点)

Linux的目录结构整体是一个多叉树

  • 叶子节点:空目录、非空目录或普通文件
  • 中间节点:一定是非空目录
  • 所有对文件的增删查改,本质都是对这棵多叉树的增删查改
  • 定位文件通常使用路径进行定位,路径是唯一的
特殊目录
  • .:当前目录
  • ..:上级目录
  • ~:当前用户家目录



六、文件系统概念深入

文件 = 属性 + 内容
  • 即使空文件也占用磁盘空间:文件属性(元数据)也需要存储空间
  • 文件属性包括:文件名、大小、权限、时间戳、所有者等
  • 文件操作包括对内容和对属性的操作

就像在C语言中创建了一个变量,即使没初始化,也会占据内存空间(如int类型占4字节),创建空文件时,系统也需要存储其属性信息。

所有 ls + 选项的操作都是针对文件属性的,因为它们主要显示文件的元数据信息而非文件内容。

文件操作的本质

在 Linux 中,所有文件操作本质上都是对多叉树结构的增删查改。




七、快捷键与系统操作

重要热键
  • Tab:具有『命令补全』和『档案补齐』的功能
  • Ctrl + Shift + C/V:复制/粘贴(需要加Shift键)
  • Ctrl + C:强制终止当前命令
  • Ctrl + D:通常代表着『键盘输入结束(End Of File, EOF 或 End OfInput)』的意思;另外,他也可以用来取代exit

操作界面快捷键
  • Alt + Enter:打开/取消Shell全屏显示
  • Ctrl + Z:退出手册或暂停当前进程

案例

代码语言:javascript
复制
while :; do echo "hello linux"; done  # 无限循环输出

# 使用Ctrl+C终止该命令



八、安全删除实践

创建回收站机制

通过修改~/.bashrc文件,可以实现rm命令的安全改造:

代码语言:javascript
复制
vim ~/.bashrc  # 修改配置文件

# 添加以下内容:
mkdir -p ~/.trash  # 创建回收站目录

alias rm=trash     # 将rm重定向到trash函数
alias ur=undelfile # 设置恢复命令

undelfile() {
  mv -i ~/.trash/\$@ ./
}

trash() {
  mv $@ ~/.trash/
}

这样配置后:

  • rm命令会将文件移动到~/.trash目录而不是直接删除
  • ur命令可以恢复被"删除"的文件



九、推荐学习资源

经典书籍
  1. 《现代操作系统》 - Andrew S. Tanenbaum
  2. 《操作系统精髓与设计原理》 - William Stallings
  3. 《深入理解计算机系统》 - Randal E. Bryant
  4. 《鸟哥的Linux私房菜》 - 适合初学者的字典级参考书

实践建议
  1. 多使用命令行操作,培养熟练度
  2. 理解每个命令的参数和选项含义
  3. 学会查阅手册页:man command
  4. 尝试编写Shell脚本自动化常见任务



十、学习路径建议

  1. 采用对比学习:采用Linux命令行操作和Windows图形界面操作对比的方式来学习
  2. 掌握基础操作:先掌握基本文件和目录操作
  3. 理解权限系统:理解用户权限和文件权限系统
  4. 学习文本处理:学习文本处理工具(grep, sed, awk)
  5. 掌握系统监控:掌握进程管理和系统监控
  6. 脚本编程:学习Shell脚本编程
  7. 深入原理:深入了解Linux系统原理

通过系统学习和不断实践,逐步建立起对Linux操作系统的深入理解,为后续的系统编程和网络编程打下坚实基础


本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-10-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、操作系统概述
    • 1. 什么是操作系统?
    • 2. 操作系统在计算机体系中的位置与贯穿作用
    • 3. 操作系统的必要性
  • 二、操作系统类比理解
    • 企业架构类比
    • 优秀操作系统的衡量标准
  • 三、Linux 操作系统特点
    • 1. 交互方式
    • 2. 设计哲学
  • 四、Linux 基础命令详解
    • 理解Linux指令的本质
    • 1. 文件目录操作命令
      • ls - 列出目录内容
      • 通配符的使用
      • 文件类型标识
    • 2. 目录导航命令
      • pwd - 显示当前目录
      • cd - 切换目录
    • 3. 文件操作命令
      • touch - 创建空文件
      • mkdir - 创建目录
      • rmdir - 删除空目录
      • rm - 删除文件或目录
    • 4. 文件拷贝与移动命令
      • cp - 拷贝文件/目录 → 目标文件/目录
      • mv - 剪切并重命名文件或目录
    • 5. 文件查看与编辑命令
      • cat - 查看目标文件内容
      • nano - 简单文本编辑器
    • 输入/输出重定向命令
      • cat - 输入重定向
      • echo - 输出重定向
      • 指令操作路径的通用性:
      • more - 分页查看文件
      • less - 高级分页查看
      • head - 查看文件开头
      • tail - 查看文件末尾
    • 6. 文件搜索命令
      • find - 在指定路径下查找文件
      • which - 在指令路径下查找(例如:/usr/bin……)
      • whereis - 在系统特定路径下查找
      • grep - 文本搜索指令
    • 7. 压缩与解压命令
      • zip/unzip - ZIP格式压缩解压
      • tar - 打包/解包命令
    • 8. 时间与日期命令
      • date - 显示或设置时间
      • cal - 显示公历日历
    • 9. 计算命令
      • bc - 浮点运算器
    • 10. 系统信息命令
      • uname - 系统信息查看
    • 11. 程序编译与执行
      • gcc - C程序编译
      • 程序执行
    • 12. 用户信息命令
      • whoami - 显示当前用户
      • 用户目录结构
    • 13. 目录结构可视化
      • tree - 树状显示目录结构
    • 14. 清屏命令
      • clear - 清空终端屏幕
    • 15.关机命令
    • 15. 手册查看命令
      • man - 查阅指令/函数的手册文档
  • 五、Linux 目录结构理解
    • 树形目录结构
    • 特殊目录
  • 六、文件系统概念深入
    • 文件 = 属性 + 内容
    • 文件操作的本质
  • 七、快捷键与系统操作
    • 重要热键
    • 操作界面快捷键
  • 八、安全删除实践
    • 创建回收站机制
  • 九、推荐学习资源
    • 经典书籍
    • 实践建议
  • 十、学习路径建议
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档