你不得不知的Linux知识(3)—— 文件管理(上)

目录

前言

1.认识文件系统

2.与目录有关的基本操作

2.1 ls -【选项】

2.2 tree

2.3 mkdir -【选项】 

2.4 rm 【选项】 (慎用!)

3.路径

3.1  绝对路径与相对路径

3.2 路径有关的常用命令(pwd与cd)

4.文件的基本操作

4.1 基本操作

4.2 文本编辑

4.3 文件内容输出

4.4 文件查找

 - find 【选项】

- which 【选项】

4.5 文本内容搜索 

- grep 【选项】

- wc 【选项】 

5.管道符(|) 


前言☀️

        Linux 最经典的一句话是:「一切皆文件」,不仅普通的文件和目录,就连块设备、管道、socket 等,也都是统一交给文件系统管理的,掌握了基本的文件管理才能更好地开展后续工作。

1.认识文件系统🌸

         Linux当中文件结构为树型结构,根目录为 / ,一切文件和目录均在 / 之中,且Linux的虚拟文件系统允许众多不同类型的文件系统共存,并支持跨文件系统的操作。 Linux的文件是无结构字符流式文件,不考虑文件内部的逻辑结构,只把文件简单地看作是一系列字符的序列。

下面认识一些基本的目录存放内容:

  • bin:存放二进制可执行命令的目录,比如之前所讲的切换用户命令su,以及ls等命令,均存储在该目录之下。
  • dev:用于存储与外部设备有关信息的目录,比如声卡文件,磁盘文件,当你接入摄像头时,与摄像头有关的信息文件均存储在这。
  • root:超级用户root的家目录
  • home:普通用户的家目录的集合
  • etc:存放系统管理和配置文件,比如网络配置文件等
  • usr:最庞大的目录,存放应用程序和文件目录
  • tep:用于存放一些临时文件
  • var:存放需要经常修改内容的文件,比如打印机、邮件等假脱机目录、系统日志文件等
  • lib:存放标准程序设计库目录,又叫动态链接共享库目录,目录中文件类似windows里的后缀名为dll的文件。

2.与目录有关的基本操作🌸

命令作用
ls显示当前目录中包含哪些文件和目录
tree以树形结构查看当前目录包含哪些文件以及子目录内容
mkdir创建目录
rm删除文件或目录

2.1 ls -【选项】

        很多命令后面都带有选项参数,记不住怎么办?欸,别急,我们可以使用 命令 --help 查看当前命令的选项参数都有哪些,分别有什么作用。

 下面介绍几个 ls 常用用法:

 

  • ls:显示当前目录中包含哪些可见文件和目录
  • ls -a:显示当前目录中的全部文件和目录,包括隐藏文件
  • ls -l:以列表的形式展示当前目录中包含哪些文件和目录,并显示有关信息,如文件的权限,所有者,字节大小,上次修改日期。 

2.2 tree

        这并不是一个Linux自带的命令,在Ubuntu中,得先用 sudo apt install tree 命令,下载tree命令,CentOS中先用sudo yum install tree命令进行下载。他可以显示当前目录下所包含的文件以及子目录中所包含的文件,以树形结构显示。

2.3 mkdir -【选项】 

mkdir 目录名1 目录名2 ....:可在当前目录下创建多个空目录

mkdir -p XX/YY/....:在当前目录中创建一个递归目录,创建一个XX文件夹,里面包含YY文件夹。

2.4 rm 【选项】 (慎用!)

rm 文件名1 文件名2...:删除这些文件,注意:rm 命令默认不会提示确认,删除后文件无法通过常规方法恢复,使用时需谨慎。

rm的选项参数如下表所示:

命令选项功能描述示例及说明
-f强制删除文件或目录,忽略不存在的文件,不提示确认rm -f file.txt 即使 file.txt 不存在,也不会报错,并强制删除该文件。
-r 或 -R递归删除目录及其内容(包括所有子文件和子目录)rm -r dir/ 删除 dir/ 目录及其包含的所有文件和子目录。
-i在删除文件或目录前提示用户确认rm -i file.txt 删除 file.txt 前会提示用户是否确认删除。
-v显示删除文件或目录的详细过程rm -v file.txt 删除时会输出类似 removed 'file.txt' 的信息,显示删除操作的详细情况。
-d仅删除空目录rm -d empty_dir/ 删除名为 empty_dir/ 的空目录,若目录不为空则会报错(一般很少使用此选项,通常用 rmdir 更明确)。

程序员经典笑话:“干不动了,直接命令 rm -rf / ,删库跑路”(切勿尝试)

3.路径🌸

3.1  绝对路径与相对路径

  • 绝对路径:从根目录 / 开始,一直到目标文件的路径,就是绝对路径,比如:/home/user1
  • 相对路径:以当前所处的位置为路径起点,就是相对路径,比如:user1/Desktop

与此同时,我们可以用 ./ 表示自己当前所处的位置,以上图为例,相对路径 ./ 等于 绝对路径 /home 

符号 ~ 表示当前用户家目录的位置

3.2 路径有关的常用命令(pwd与cd)

  • pwd:显示当前所处的路径
  • cd:切换路径,到别的文件位置

     使用pwd命令可以看到,我们当前所处的路径为/home/user,使用 cd .. 可以返回到当前目录的上一级目录,也就是/home

// 当前所处位置:/home/user
root@user-virtual-machine:/home/user# cd ../Testuser
// 这里是相对路径的写法,..回到当前的上一级目录,即/home,接着访问home目录下的Testuser目录
// 切换到 /home/Testuser 路径
root@user-virtual-machine:/home/Testuser# cd /home/user/Desktop/
// 使用绝对路径访问

小Tip:我们输入路径的时候,可以使用 Tab 键进行快速补齐,系统会帮我们自动补充好。 

4.文件的基本操作🌸

4.1 基本操作

命令功能描述示例
cp复制文件或目录cp file.txt /path/to/destination/
mv移动或重命名文件或目录

mv file.txt /path/to/new/location/(移动);

mv file.txt newname.txt(重命名)

rm删除文件或目录rm file.txt(删除文件)
touch创建空文件touch newfile.txt
file查看文件类型file file.txt

        上述命令都比较简单,大家可以自行在虚拟机上尝试操作。 

4.2 文本编辑

命令功能描述示例
nano简单易用的文本编辑器nano file.txt
vi/vim功能强大的文本编辑器vi file.txt
geditGNOME桌面的图形文本编辑器(需图形界面)gedit file.txt
  •  nano:一个最为简便的文本编辑器,当你使用nano编辑文本时,相关操作参数都会显示在下面,你可以使用键盘的 ctrl+对应参数按键 完成对应的操作。

  • vi/vim:vim并非自带的文本编辑器,得先使用 sudo apt install vimsudo yum install vim 下载,当你使用他们开始编辑文本时,可以按键盘的 i o 进入编辑模式,此时你就可以输入修改了,接着点击键盘的 Esc 按键,退出编辑模式,此时输入 :q 表示直接退出,不保存本次编辑内容,:q! 表示强制退出,:wq 表示保存内容退出,:wq!表示强制保存内容退出。
  • gedit:平常在自己带桌面界面的虚拟机上可以使用,并且编辑十分方便,如同word编辑一样。但在不带界面的服务器上,gedit就没办法运行了。

4.3 文件内容输出

命令功能描述示例
cat查看文件内容(适合小文件)cat file.txt
more分页查看文件内容more file.txt
less分页查看文件内容(可上下滚动)less file.txt
head查看文件开头部分(默认前10行)head file.txt
tail查看文件结尾部分(默认最后10行)tail file.txt
tail -f实时查看文件末尾新增内容(常用于日志)tail -f /var/log/messages

当然cat命令可以输出多个文件内容,cat 文件1 文件2,cat还可以用于文件内容的合并,例如:

cat file1.txt file2.txt > combined.txt 

4.4 文件查找

 - find 【选项】

  • find 【查找路径】-name “文件名”:路径可以不填,默认为当前路径查找,按文件名查找文件位置。这里的文件名支持通配符,可以用*来匹配省略的部分,具体看下面的说明。
  • find 【查找路径】-type -d:查找路径下的所有目录
  • find 【查找路径】-type -f:查找路径下的所有文件

第一行命令,查找当前目录中所有以txt结尾的文件位置,使用*字符进行统配。

第二个命令,查找当前目录下所有的目录文件。

- which 【选项】

   which命令是用于查找可执行的二进制文件位置的,可以查找命令所在位置,默认只显示一条有关的文件路径,-a选择参数,可以显示全部有关路径。

4.5 文本内容搜索 

- grep 【选项】

        grep是一个文本搜索工具,用于在文件中搜索与指定模式匹配的行。它支持正则表达式,可以用于复杂的文本匹配。

选项功能描述示例
-i忽略大小写grep -i "pattern" file.txt
-v反向匹配,显示不匹配的行grep -v "pattern" file.txt
-r 或 -R递归搜索目录grep -r "pattern" /path/to/directory
-n显示匹配行的行号grep -n "pattern" file.txt
-c统计匹配的行数grep -c "pattern" file.txt
-l只显示匹配的文件名grep -l "pattern" *.txt
-w匹配整个单词grep -w "word" file.txt

- wc 【选项】 

wc(Word Count)用于统计文件的行数、单词数和字节数。

选项功能描述示例
-l统计行数wc -l file.txt
-w统计单词数wc -w file.txt
-c统计字节数wc -c file.txt

5.管道符(|) 🌸

管道符 | 是一个非常强大的工具,它允许将一个命令的输出作为另一个命令的输入。这种机制可以实现多个命令的串联,从而完成复杂的任务。

上面的例子中,第二个命令,将ls的输出结果,作为wc命令执行的对象,统计出一共有5个单词,对应当中的5个文件。

第三个命令,同样将ls的输出结果作为grep的输入,从中查找包含txt的部分。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值