Linux常用命令2
一.ls 命令:显示 目录内容
- 显示目录中内容,包括子目录和文件相关属性信息;
- 命令行使用格式:
ls -l :显示文件或目录的详细信息
- ls -a :显示所有(all)子目录 和 文件信息 ,包含名称以 “· ” 开头的 隐藏目录 和 隐藏文件 ;
- ls -A :查看 隐藏文件 ,除了 表示当前目录的 “·” 和 父目录 “··” ;
- ls -d :显示目录本身的属性,而不是显示目录中的内容 ;
- ls -h :更人性化的显示文件(目录)大小的单位信息,此选项需结合“-l”一起使用 ;
- ls -R :递归显示(如果目录中还有子目录,则会把子目录中的文件依次展现。);
- ls -color:以颜色区分文件类型 ;
黑色(数据文件)
白色(一般文件)
蓝色(目录/文件)
红色(压缩包)
绿色(可执行的文件/命令文件/脚本)
淡蓝色(链接文件/快捷方式)
黄色(设备文件/磁盘文件)
ls -i:显示文件和目录的inode号 。
1.2. 结合 通配符
- “?”:代表任意一个字符,有且只有一个字符;
- “*” :代表任意数个字符,可以是0个、1个,也可以是多个字符;
- “[ ]” :表示可以匹配字符组中的任意一个字符。
例:[abc]=a,b,c ;[a-f]=a,b,c,d,e,f。
二.设置别名、空间占用和创建新目录
alias:设置别名
- 对于经常用到的但却比较长的命令行可以采用alias别名机制进行简化;
- 命令行使用格式:alias 命令别名=‘命令’(“=”两边不能有空格)。
三.du:统计目录 及 文件空间 占用情况
- du命令(DiskUsage)用于统计目录及文件所占磁盘空间的大小,使用目录或文件的名称作为参数。
- 命令行格式
- du -a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录 ;
- du -h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果 ;
- du -s:只统计所占用空间总的大小,而不是统计每个子目录、文件的大小(选项-a和-s不可同时使用);
- du -h - -max-depth=n:统计所有小于等于第n层的目录的总大小 。
四.mkdir:创建 新目录
- 创建新的空目录:命令行格式
五.touch:创建 空文件
- touch命令本用于更新文件的时间标记,但在实际中经常用于创建新的测试文件。
- 使用文件名作为参数,可以同时创建多个文件。
- 当目标文件已存在时,将更新该文件的时间标记,否则将创建指定名称的空文件。
- 命令行格式
- 例1:创建2个空文件
- 例2:创建2个文件,文件名分别为 1.txt 和 2.txt
六.ln:创建 链接文件
- 为文件或者目录创建链接文件;(相当于Windows系统的快捷方式)
- 分为软链接和硬链接;
- 在Linux中,文件和文件数据是分开储存的。
- 软链接 是 重新创建 一个软链接文件名 及 软链接文件数据 ,但是 软链接文件 数据 是指向 源文件的文件名的,软链接 相当于 源文件 的 快捷方式 ;
- 硬链接 相当于 给文件起了 别名 ,这个 别名 可以 直接指向 源文件名 ,一个源文件名可以有 多个 别名,但 删除这个别名并不会影响源文件 。
- 命令行格式
-
硬链接的创建方式及验证:
-
软链接的创建方式及验证
七.软链接 文件 和 硬链接 文件 的区别
八.复制、删除、移动目录和文件
8.1cp(copy):复制 文件 或 目录
- 将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录。
- 复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在。
- 在linux系统中,默认 cp 是 “cp -i” 的别名。
- 进行复制操作时,也可以更改目标文件的文件名。
- 命令行使用格式:cp [选项] 源文件或目录 目标文件或目录
- cp -f∶ 覆盖目标同名文件或目录时不进行提醒,而直接强制复制 ;
- cp -i∶ 覆盖目标同名文件或目录时提醒用户确认 ;
- cp -p∶ 复制时保持源文件的权限、属主及时间标记等属性不变 ;
- cp -r∶复制目录时必须使用此选项,表示递归复制所有文件及子目录
8.2rm(remove):删除 文件 及 目录
- 在Linux命令行界面中删除的文件是难以恢复的,所以rm命令的使用要谨慎;
- 在linux系统中,rm 是 “rm -i” 的别名;
- 不要直接删除系统中已有的目录或配置文件,以避免出现意外故障;
- 删除目录下文件时建议最好先切换到目录下再执行rm -rf命令。
- 命令行格式
- rm -f∶ 删除文件或目录时不进行提醒,而直接强制删除(不建议使用);
- rm -i∶删除文件或目录时提醒用户确认(y表示删除,n表示不删除);
- rm -r∶ 删除目录时必须使用此选项,表示递归删除整个目录树(谨慎使用)。
8.3 mv(move):移动 文件 及 目录
- 将指定的文件或目录转移;
- 需要移动多个文件或者目录时,目标位置必须是目录,且目标目录必须已经存在;
- 如果目标位置和源位置相同,则相当于执行重命名操作;
- mv命令虽然具有重命名的功能,但只能对单个文件重命名,批量修改文件名需要使用rename命令。
- 命令行格式
九.查找目录和文件
9.1which:查找 用户所执行的 命令文件 存放目录
- 搜索范围由 环境变量 PATH 决定(echo $PATH);
- 使用 which 查找 内部命令 时,将找不到对应的程序。
9.2find:查找 文件 或 目录
- 采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找。
9.3使用 find命令 实现 多个 查找条件
(1)各表达式之间使用逻辑运算符
- “-a” 表示 而且(and)
- “-o” 表示 或者(or)
(2)命令示例:
- 例1:find /boot -size +1024k -a -name "vmlinuz*"
意为:find(查找)/boot(boot目录中)-size(按文件大小)+1024k(大小超过1024k)-a(而且)-name(名字以)“vmlinuz”(“vmlinuz”开头的文件)。
- 例2:find /boot -size +1024k -o -name "vmlinuz*"
意为:查找 boot 目录中大小超过 1024k ,或者名字以 “vmlinuz” 开头的文件。
十.命令执行的优先级
第一优先级:指定路径的命令。绝对路径/usr/bin/ls或者相对路径 cd /usr/bin ./ls
第二优先级:别名指定的命令alias myls='/usr/bin/ls -alh'
第三优先级:内部命令
第四优先级: hash命令
linux系统下会有一个hash表,当你刚开机时这个hash表为空,每当你执行过一条命令时,hash表会记录下这条命令的路径,就相当于 Linux系统下会有一个散列表,当你刚开机时这个hash表为空,每当你执行过一条命令时,hash表会记录下这条命令的路径,就相当于
缓存一样。第一次执行命令shel1解释器默认的会从PATH路径下寻找该命令的路径,当你第二次使用该命令时,shell解释器首先会查看hash表,没有该命令才会去PATH路径下寻找。hash表能提高命令的调用速率。
第五优先级:通过PATH 定义的查找顺序查找
如果以上顺序都找不到,就会报"未找到命令..."的错误。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」