Linux系统命令基础
一、Linux命令格式
命令 空格 条件/参数 空格 对象/文件/目录
1.一般情况下,参数是可选的,一些情况下【文件或路径】也是可选的
2.参数 > 同一个命令,跟上不同的参数,执行不同的功能
二、Linux命令行
root:用户名
@ :占位符
: 主机名
~ :当前的登录位置,此时是/root的家目录
# :超级用户身份提示符
$ :普通用户身份提示符
三、Linux目录结构
1. Linux首先建立一个根“/”文件系统,所有的目录也都是由根目录衍生出来的
ls -l /
在Linux中,所有的文件与目录都是由根目录开始的,是目录与文件的源头,然后一个个的分支下来。因此称之为:目录树
1). 目录树的起点是根目录(/)
2). 每一个目录不止能使用本地的文件系统,也可以使用网络上的文件系统(利用NFS服务器挂载特定)
3). 每一个文件在此目录树中的文件名,包含完整的路径都是独一无二的。
2. Linux系统目录结构如下:
Linux系统目录结构基本特点:
1)Linux下一切从根开始
2)Linux下面的目录是一个有层次的结构目录
3)在Linux中每个目录可以挂载到不同的设备上
4)Linux下设备不能挂载不能使用,挂载相当于给设备创造了一个入口
3. Linux目录挂载
挂载:将一个存储设备挂载到一个已经存在的目录上,访问这个目录就是访问该存储设备的内容。
对于Linux系统来说,一切皆文件,所有文件都放在以根目录为起点的树形目录结构中,任何硬件设备也都是文件形式。
4. Linux目录结构
/media:Linux系统会自动识别的一些设备,如U盘,光驱等。当识别后,Linux会把识别的设备挂载到这个目录下
/lost+found:这个目录一般情况下为空,当系统非法关机后,这里就存放一些文件
/proc:虚拟机目录,它是系统内存的映射,可以通过直接访问这个目录来获取系统信息。这个目录的内容是在内存里,也可以直接修改里面的某些文件。
/srv:该目录存放一些服务启动后需要提取的数据
/sys:该目录安装了2.6内核中新出现的一个文件系统sysfs。sysfs文件系统集成了三种文件系统信息:针对进程信息的proc文件系统,针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象呗创建的时候,对应的文件和目录也在内核对象子系统中呗创建。
/usr/src:内核源代码默认的放置位置
注:/bin ,/usr/bin 是给系统用户使用的命令(除root外的通用户)
/sbin ,/usr/sbin是给root使用的命令
四、Linux文件及目录管理命令
特殊符号指定目录
. : 当前目录
.. :上一层目录
- :前一个工作目录
~ :当前【用户】所在家目录
/ :顶级根目录
1. ls 命令详解
ls 参数
-a:显示指定目录下所有子目录与文件,包括以.开头的隐藏文件
-l:以列表方式显示文件的详细信息 ls -l 等于ll 用法
-h, --human-readable:与-l 一起,以易于阅读的格式输出文件大小
-t:根据最后修改时间排序,默认是以文件名排序,通常与-l 连用
-F:在条目后加上文件类型的指示符号(* , /, = , @ , | ,其中的一个)
注:可以标识文件类型
加上 * 代表可执行的普通文件
加上 = 表示套接字
加上 | 表示FIFOS(队列系统)
加上 @ 表示符号链接
加上 / 表示文件夹
-d:显示目录本身的信息 而不是显示目录的内容
-r, --reverse:逆序排列
-S:根据文件大小排序,从大到小排序
-i:显示索引节点信息(索引节点相当于身份证号)
--full-time: 以完整的时间格式输出(也就是按照中国的时间日期显示)
2. tree命令详解
tree常用参数
-C 在文件和目录清单加上色彩,便于区分各种类型。
-d 显示目录名称而非内容。
-D 列出文件或目录的更改时间。
-f 在每个文件或目录之前,显示完整的相对路径名称。
-F 在条目后加上文件类型的指示符号(* , /, = , @ , | ,其中的一个) 目录/
3. cp命令详解
用法:cp [选项]... [-T] 源文件 目标文件
或:cp [选项]... 源文件... 目录
或:cp [选项]... -t 目录 源文件...
将源文件复制至目标文件,或将多个源文件复制至目标目录。
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
4. mkdir命令
用法:mkdir [选项]... 目录...
若指定目录不存在则创建目录。
-m, --mode=模式 设置权限模式(类似chmod),而不是rwxrwxrwx 减umask
-p, --parents 需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理
mkdir {1..3}加花括号创建连续的目录,用..隔开 花括号内可以是连续的数字、连续的字母mkdir {a..e}
5. touch命令
用法:touch [选项]... 文件...
将每个文件的访问时间和修改时间改为当前时间。
不存在的文件将会被创建为空文件,除非使用-c 或-h 选项。
touch {连续数字或字母} 创建多个文件序列
touch {1..10}
touch {a..z}
-c, --no-create 不创建任何文件
-t STAMP 使用[[CC]YY]MMDDhhmm[.ss] 格式的时间替代当前时间
-r, --reference=文件 使用指定文件的时间属性替代当前文件时间
6. mv命令
mv 命令修改文件或目录名或将文件或目录移入其它位置
-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示
mv 文件名 文件名 (只是修改文件名,其他的保持不变)
7. rm删除命令
rm 命令用于删除一个文件或者目录
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除
注:删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏