Linux文件系统和目录及常见操作命令

文件系统和目录简介

Linux里面一切皆文件,linux只有一个根目录/,所有的文件或者说资源都存储在根目录/为源头的树形目录结构中。任何硬件设备也都是文件,它们各有自己的一套文件目录结构。
Linux 中的目录,和 Windows 系统中的文件夹类似,不同之处在于,Linux 系统中的目录也被当做文件看待。
文件的扩展名对 Linux 操作系统没有特殊的含义,换句话说,Linux 系统并不以文件的扩展名开分区文件类型。

绝对路径和相对路径

绝对路径一定是由根目录 / 开始写起。而相对目录,是相对当前工作目录为参照物的路径。相对路径不是从根目录 / 开始写起,而是从当前所在的工作目录开始写起。使用相对路径表明某文件的存储位置时,经常会用到 2 个特殊目录,即当前目录(用 . 表示)和其父目录(用 … 表示),其上上级目录通过用cd 加绝对路径进入即可。

常见子目录用途
/root系统管理员root的宿主目录
/home普通用户的宿主目录
/boot系统内核、启动文件
/dev设备文件
/etc配置文件
/bin所有用户可执行的命令
/sbin管理员可执行的管理命令
/usr应用程序
/var日志文件
/lib存放系统程序的动态连接共享库文件(类似于windows里的DLL文件)
/media可卸载的媒介挂载点,例如U盘,光驱等
/proc存放映射系统信息的文件
/mnt临时挂载存储设备的目录
/opt第三方应用程序安装所存放的目录
/tmp存放系统的临时文件
/srv服务目录,存放本地服务的相关文件

1. cd命令

cd命令进入目录作用
cd ~代表当前登录用户的主目录
cd ~ 用户名表示切换至指定用户的主目录
cd-代表上次所在目录
cd.代表当前目录
cd . .代表上级目录

2. pwd(Print Working Directory)命令打印路径

功能是显示当用户当前所处的目录。

3. ls和alias命令

选项作用
-a显示全部文件,包括隐藏文件(以.开头的文件)
-A显示全部的文件,连同隐藏文件,但不包括.与. .这两个目录
-d仅列出目录本身,不列出目录内的文件数据
-fls默认会以文件名排序,使用-f选项会直接列出结果,而不进行排序
-F在文件或者目录名后加上文件类型的指示符号,如,*代表可运行文件,/代表目录,=代表socket文件,
-h以人性化的方式显示文件或目录大小,1KB、1MB、1GB等
-i显示inode节点信息
-l除文件名称外,将文件型态、权限、拥有者、文件大小等资讯详细列出
-n以UID和GID分别代替文件用户名和群组名显示出来。
-r将排序结果反向输出
-R连同子目录内容一起列出来,等于将该目录下的所有文件都显示出来
-S以文件容量的大小排序,而不是以文件名排序
-t以时间排序,而不是以文件名排序

linux中alias定义别名,格式:alias 别名=‘原命令 -选项/参数’

注意:

  1. 在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。
  2. 仅在命令中包含空格或特殊字符时才需要引号。
  3. 如果键入不带任何参数的alias 命令,将显示所有已定义的别名。

alias myhome=‘cd /home’; 此alias命令只作用于当次登入的操作。

如果想每次登入都能使用这些命令的别名,则可以把相应的alias命令存放在 ~/.bashrc 文件中。打开~/.bashrc文件,输入要设置的alias命令,保存,然后运行。

注意:删除别名用unalias aaa

4. mkdir(make directories)命令

此命令用于创建新的目录,所有用户都可以使用。

  • -m 选项用于手动创建目录时同时配置目录的权限,而不再使用默认权限。
  • -p 选项递归创建所有目录,以创建 /home/aaa/bbb为例,在默认情况下,你需要
    一层一层的创建各个目录,而使用 -p 选项,则系统会自动帮你创建 /home/aaa、/home/aaa/bbb

5. rmdir(remove empty directories)命令

此命令与mkdir命令相反,用于删除空目录。

  • -p 选项用于递归删除空目录,注意是空目录,鸡肋命令,一般都用rm

6. touch命令

此命令一般用来创建新文件。注意touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数)注意touch 1.txt 2.txt 3.txt,可以在同一个路径下同时创建多个文件。

比如touch {1…5}.txt可以同一个路径下同时创建1-5.txt五个文件。

在这里插入图片描述

7. cp命令

cp 命令既可以复制文件,也可以复制目录。同时cp还有文件重命名的作用,比如cp ./a.txt …/b.txt

在这里插入图片描述

8. rm命令

此命令它可以永久性地删除文件系统中指定的文件或目录。rm -rf / 慎用。-f:强制删除(force),和 -i 选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录。
• -i:和 -f 正好相反,在删除文件或目录之前,系统会给出提示信息,使用 -i 可以有效防止不小心删除有用的文件或目录。
• -r:递归删除,主要用于删除目录,可删除指定目录及包含的所有内容,包括所有的子目录和文件。
在这里插入图片描述

9. mv(move) 命令

mv可以在不同的目录之间移动文件或目录,也可以对文件和目录进行重命名。注意mv快的原因本质就是重命名,其实没有移动文件。当然mv本省也可以实现文件重命名的角色

选项作用
-f强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖
-i交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项)
-n如果目标文件已经存在,则不会覆盖移动,而且不询问用户
-v显示文件或目录的移动过程
-u若目标文件已经存在,但两者相比,源文件更新,则会对目标文件进行升级

10. 文件查看cat/more/less/head/tail

cat命令:只能查看不能编辑

  • -n: 查看文件内容带行号
  • -b :空白行不编号
  • -s :将所有连续的空行替换为一个空行

more yum.log 可以半屏幕展示,然后按照回车键继续输入

在这里插入图片描述
less指令用来分屏查看文件内容,它的功能与more指令类似

在这里插入图片描述
head用于输出文件开头部分的内容,默认情况下head指令显示文件的前十行内容

  • -n 行数 : 输出文件尾部n行的内容

tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容

  • -n 行数 : 输出文件尾部n行的内容
  • -f :显示文件最新追加的内容,监视文件变化
  • tail -f /var/log/messages查看日志

11. wc(word count)命令

此命令用来统计文件中单词数量

  • l:统计行数
  • w:统计出现的单词数量
  • c :字节数量
  • wc不带任何选项默认执行lwc

12. grep(global regular expression print,全局正则表达式输出)命令

  • -i:查找时不区分大小写 加不加都一样(默认)
  • -v:显示不包含匹配文本的所有行(反向查询,反向匹配)
  • -n:显示匹配行及行号
  • -c:只输出匹配到的总行数(不是匹配到的次数)
  • -e:实现可多个查找条件的匹配,逻辑or关系
  • -E:支持使用扩展正则表达式,相当于使用egrep命令
  • -l:列出包含指定模式的文件的文件名,哪个文件里出现这个单词

在这里插入图片描述

grep可以在多个文件中查找单词,如:
在这里插入图片描述

使用 ^ 符号输出所有以某指定模式开头的行.。同样可以使用 $ 符号输出所有以指定模式结尾的行

  • grep ^root /etc/passwd
  • grep bash$ /etc/passwd

在这里插入图片描述
^$,表示空行。

13. ln命令

该命令是用来创建软硬链接的。
硬链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。如果删除硬链接对应的源文件,则硬链接文件仍然存在,而且保存了原有的内容,这样可以起到防止因为误操作而错误删除文件的作用。
另一种是符号链接(又称软链接),软链接可以是任意文件或目录,可以链接不同文件系统的文件。在对符号文件进行读或写操作的时候,系统会自动把该操作转换为对源文件的操作,但删除链接文件时,系统仅仅删除链接文件,而不删除源文件本身,这一点类似于 Windows 操作系统下的快捷方式。
无论是软链接还是硬链接,文件都保持同步变化!
在这里插入图片描述
ln -s [原文件或目录] [软链接名](功能描述:给原文件创建一个软链接)
ln [原文件或目录] [硬链接名](功能描述:给原文件创建一个硬链接)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

14. echo命令

echo使用来输出内容到控制台,参数-e:支持反斜线控制的字符转换。整体来说这个比较简单,就是一些特殊字符注意下。

控制字符作用
\输出 “ \ ”本身
\n换行符
\t制表符,相当于tab键

在这里插入图片描述

15. “ > ”和“ >> ”命令

  • ls -al >> aaa.txt (功能描述:列表的内容追加到文件aa.txt的末尾)
  • cat bb.txt > aaa.txt (功能描述:将bb.txt的内容覆盖到aaa.txt中)

覆盖(>):
在这里插入图片描述
追尾(>>)
在这里插入图片描述
特别注意,两者如果文件不存在都会新建文件的!

16. history命令

用来查看历史命令。
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值