Linux常用命令
目录
Linux命令基础
Linux命令帮助
目录与文件基本操作
总结
Shell
Linux系统中运行的一种特殊程序
在用户和内核之间充当“翻译官”
用户登录Linux系统时,自动加载一个Shell程序
Bash是Linux系统中默认使用的Shell程序
文件位于/bin/bash
Shell在用户和内核之间充当翻译官,用户输入命令——》Shell解释命令——》传递给系统内核——》内核调动相应的硬件。
Linux命令分类
内部命令 |
外部命令 |
集成于Shell解释程序内部的一些特殊指令,也称为内建(Built-in)指令 |
Linux系统中能够完成特定功能的脚本或二进制程序 |
属于Shell的一部分 |
属于Shell解释器程序之外的命令 |
没有单独对应的系统文件 |
每个外部命令对应了系统中的一个文件 |
自动载入内存,可以直接使用 |
必须知道其对应的文件位置,由Shell加载后才能执行 |
Linux命令行的格式2-1
通用的命令行使用格式
命令字 选项 参数 (英文字符区分大小写)
命令字
是整条命令中最关键的一部分
唯一确定一条命令
选项
短格式选项:使用“-”符号引导
长格式选项:使用:“--”符号引导(多个单字符选项可以组合在一起使用)
参数
命令字的处理对象
可以是文件名 目录 (路径)名或用户名等内容
个数可以是零到多个
编辑Linux 命令行的辅助操作
Tab键 :自动补全
反斜杠"\":强制换行
Ctrl+U组合键:清空至行首
Ctrl+K组合键:清空至行尾
Ctrl+L组合键:清屏
Ctrl+C组合键:取消本次命令编辑
Ctrl+E组合键:光标跳至行尾
Ctrl+A组合键:光标跳至行头
获得命令帮助的方法
内部命令help
查看Shell内部命令的帮助信息
命令的“--help”选项
适用于大多数Linux外部命令
使用man命令阅读手册页
使用“↑”、“↓”方向键滚动一行文本
使用Page Up和Page Down键翻页
按Q或q键退出阅读环境
按“\”键查找内容
查看当前的工作目录-pwd
显示用户当前所在的工作目录位置
切换工作目录-cd
将用户的工作目录更改到其他位置
格式 |
说明 |
cd目标位置 |
切换到目标位置 |
Cd~若不指定目标位置,切换到当前用户的宿主目录 Cd |
|
cd- |
切换到上一行执行cd命令之前所在的目录 |
绝对路径
相对路径
相对路径的表现形式
表现形式 |
说明 |
示例 |
直接使用目录名或文件名 |
表示当前工作目录中的子目录、文件的位置 |
grub.conf |
以一个点号“.”开头 |
表示以当前的工作目录作为起点 |
./grub.conf |
以两个点号“..”开头 |
表示以当前目录的上一级目录(父目录)作为起点 |
../vmlinuz |
以“~用户名”形式开头 |
表示指定用户的宿主目录作为起点 |
~teacher |
列表显示目录内容-ls
显示目录中内容,包括子目录和文件相关属性信息
ls [选项] [文件或目录...]
常用选项
-l、-a、-A、-d、-h、-R、--color
结合调配符
“?”:匹配文件名中的一个未知字符
“*”:匹配文件名中的任意多个字符
-l #将文件信息属性详细列出,通常直接使用ll,因为设置了别名
-R #递归显示,比如一个目录下还有文件,则把那个文件也一起列出
-d #查看目录本身信息,不显示目录下的内容
-i #显示inode值
-h #友好显示文件大小
-a #遍历所有文件及目录
(ls内定将文件名或目录名称开头为“.”的视为隐藏档,不会列出)
-A #跟-a唯一的不同是不列出当前目录和上一层目录
设置别名-alias
通过别名机制简化常用的、比较长的命令
alias 命令别名=命令 |
示例
设置myls为ls -alh
alias myls=‘ls -alh’ |
统计目录及文件空间占用情况-du
统计指定目录(或文件)所占用磁盘空间大小
du 【选项】 【文件或目录...】 |
常用选项
选项 |
说明 |
-a |
统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录 |
-h |
以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果 |
-s |
只统计所占用空间的(Summary)大小,而不是统计每个子目录、文件的大小 |
示例:
统计出/var/log目录所占用空间的大小
du -sh /var/log/ |
创建新目录-mkdir
创建新的空目录
mkdir 【选项】 目录位置及名称... -p : 一次性创建嵌套的多层目录 |
示例
在当前目录下创建名为 public_html的子目录
mkdir public_html |
创建目录 /aa,在 /aa目录下创建目录bb,在 /aa/bb目录下创建子目录cc
mkdir -p /aa/bb/cc |
创建空文件-touch命令
更新文件的时间标记
经常用于创建多个新的空文件
touch 文件... |
示例
创建两个空文件,文件名分别为aa和bb
touch aa bb |
创建链接文件-ln
为文件或目录建立链接文件,类似于Windows系统的快捷方式
链接文件类型
软链接(又称为符号链接)
硬链接
ln 【-s】源文件或目录...链接文件或目标位置 |
示例
ln -s/bin/bzip2 /bin/wx/ |
硬软区别
硬链接不能跨分区建立连接,无法对文件夹创建
删除硬链接可以继续访问硬链接
软链接可以跨设备 可以支持文件夹
软链接删除源文件不能访问
注:相对路径与绝对路径 建议绝对路径
案例
[root@kgc home]# echo "this is kgc" > demo.txt
[root@kgc home]# ln -s demo.txt test.txt
删除demo.txt 验证
[root@kgc home]# echo "this is kgc" > demo1.txt
[root@kgc home]# echo "this is kgc2" > demo2.txt
[root@kgc home]# ln demo1.txt test2.txt
root@localhost ~]# mkdir /bin/wx
[root@localhost ~]# ln -s /bin/bzip2 /bin/wx/
[root@localhost ~]# ls -lh /bin/wx/bzip2
复制文件或目录-cp
将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录
cp 【选项】...源文件或目录... |
常用选项
选项 |
说明 |
-f |
覆盖目标同名文件或目录时不进行提醒,直接强制复制 |
-i |
覆盖目标同名文件或目录时提醒用户确认 |
-p |
复制时保持源文件的权限、属主及时间标记等属性不变 |
-r |
复制目录时必须使用此选项,表示递归复制所有文件及子目录 |
cp的高级用法:cp -v file1.txt{,.bak}常用于备份
删除文件或目录-rm
删除指定的文件或目录
rm 【选项】 要删除的文件或目录 |
常用选项
-f、-i、-r
示例
rm -rf public_html/grub/ |
rm -i public_html/apg.conf |
-f:删除文件或目录时不进行提醒,而直接强制删除
-i:删除文件或目录时提醒用户确认
-r:删除目录时必须使用此选项,表示递归删除整个目录(应谨慎使用)。
常见用法:rm -rf /*
删除空目录:rmdir
移动文件或目录-mv
将指定的文件或目录转移位置
如果目标位置与源位置相同,则相当于执行重命名操作
mv 【选项】... 源文件或目录... 目标文件或目录 |
示例
mv mytouch mkfile mv mkfile public_html/ |
查找命令/文件存放目录-which
搜索范围由环境变量PATH决定(echo $PATH)
which 命令|程序名 |
或
which -a 命令|程序名 |
示例
which ls which cd |
查找文件或目录-find2-1
采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
find 【查找范围】 【查找条件表达式】 查找文件或子目录的目录位置 查找条件类型 |
查找文件或目录-find2-2
常用查找条件类型
查找类型 |
关键字 |
说明 |
按名称查找 |
-name |
根据目标文件的名称进行查找,允许使用“*”及“?”通配符 |
按文件大小查找 |
-size |
根据目标文件的大小进行查找 一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件 常用的容量单位包括kB(注意k是小写)、MB、GB |
按文件属主查找 |
-user |
根据文件是否属于目标用户进行查找 |
按文件类型查找 |
-type |
根据文件的类型进行查找 文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等 |
使用find命令实现多个查找条件
各表达式之间使用逻辑运算符
“-a”表示而且(and)
“-o”表示或者(or)
Find工具-size参数案列
find /data/ -size +1M #查文件大小大于1Mb的文件;
find /data/ -size 4M #查文件大小为10M的文件;
find /data/ -size -1M #查文件大小小于1Mb的文件;
总结
Shell是一种特殊程序
Linux命令的分类、格式及使用方法
Linux常用命令
查看及切换目录(pwd、cd、ls、du)
创建目录和文件(mkdir、touch、ln)
复制、删除、移动目录和文件(cp、rm、mv)
查找目录和文件(which、find)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律