Linux文件与目录管理


前言

我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /。

其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。

  • 绝对路径:
    路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录。
  • 相对路径:
    路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd . ./man 这就是相对路径的写法。

一、处理目录的常用命令

  • ls(list files):列出目录及文件名
  • cd(change directory):切换目录
  • pwd(print work directory):显示当前的目录
  • mkdir(make directory):创建一个新的目录
  • rmdir(remove directory):删除一个空的目录
  • cp(copy file):复制文件或目录
  • rm(remove):删除文件或目录
  • mv(move file):移动文件与目录,或修改文件与目录的名称

你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp。

(一)工作目录切换命令

1.pwd(显示目前所在目录)

pwd [P]

  • -P:显示出确实的路径,而非使用链接(link)路径。

显示实际工作目录

2.cd(切换目录)

语法:

cd [相对路径或绝对路径]

"cd -"命令返回到上一次所处的目录
"cd . ."命令进入上级目录
"cd ~"命令切换到当前用户的家目录
"cd ~username"切换到其他用户的家目录
cd命令

3.ls(列出目录)

在Linux系统当中,ls命令可能是最常被运行的。
ls命令用于显示目录中的文件信息,格式为“ls [选项] [文件] ”。

选项与参数:

  • -a:全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
  • -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
  • -l :长数据串列出,包含文件的属性与权限等等数据;(常用)

所处的工作目录不同,当前工作目录下的文件肯定也不同。将这两个参数整合之后,再执行ls命令即可查看当前目录中的所有文件并输出这些文件的属性信息:

[root@www ~]# ls -al 

如果想要查看目录属性信息,则需要额外添加一个-d参数。例如,可使用如下命令查看/etc目录的权限与属性信息:

[root@linuxprobe ~]# ls -ld /etc

(二)文件目录管理命令

1.touch命令

touch命令用于创建空白文件或设置文件的时间,格式为“touch [选项] [文件]”。

在创建空白的文本文件方面,这个touch命令相当简捷,简捷到没有必要铺开去讲。比如,touch linuxprobe命令可以创建出一个名为linuxprobe的空白文本文件。对touch命令来讲,有难度的操作主要是体现在设置文件内容的修改时间(mtime)、文件权限或属性的更改时间(ctime)与文件的读取时间(atime)上面。

  • -a:仅修改“读取时间”(atime)
  • -m:仅修改“修改时间”(mtime)
  • -d:同时修改atime与mtime
    在这里插入图片描述

2.mkdir(创建新目录)

mkdir [-mp]目录名称

选项与参数:

  • -m:配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
  • -p:帮助你直接将所需要的目录(包含上一级目录)递归创建起来!

在/tmp底下创建数个新目录
在这里插入图片描述

3.cp(复制文件或目录)

cp命令用于复制文件或目录,格式为“cp [选项] 源文件 目标文件”。
大家对文件复制操作应该不陌生,在Linux系统中,复制操作具体分为3种情况:

  • 如果目标文件是目录,则会把源文件复制到该目录中;
  • 如果目标文件也是普通文件,则会询问是否要覆盖它;
  • 如果目标文件不存在,则执行正常的复制操作。

cp命令的参数及其作用

接下来,使用touch创建一个名为install.log的普通空白文件,然后将其复制为一份名为x.log的备份文件,最后再使用ls命令查看目录中的文件:
在这里插入图片描述

用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc
在这里插入图片描述

4.mv(移动文件与目录,或修改名称)

mv [选项] 源文件 [目标路径|目标文件名]

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

5.rm(移除文件或目录)

rm [选项] 文件

选项与参数:

  • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息,强制删除;
  • -i :互动模式,在删除前会询问使用者是否动作
  • -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!

在这里插入图片描述

6.rmdir(删除空的目录)

rmdir [-p] 目录名称

  • -p:从该目录起,一次删除多级空目录

在这里插入图片描述

7.dd

dd命令用于按照指定大小和个数的数据块来复制文件或转换文件,格式为“dd [参数]”。

dd命令是一个比较重要而且比较有特色的一个命令,它能够让用户按照指定大小和个数的数据块来复制文件的内容。当然如果愿意的话,还可以在复制过程中转换其中的数据。

Linux系统中有一个名为/dev/zero的设备文件,每次在课堂上解释它时都充满哲学理论的色彩。因为这个文件不会占用系统存储空间,但却可以提供无穷无尽的数据,因此可以使用它作为dd命令的输入文件,来生成一个指定大小的文件。
在这里插入图片描述
在这里插入图片描述

8.file

file命令用于查看文件的类型,格式为“file 文件名”。
在这里插入图片描述

二、Linux文件内容查看

  • cat 由第一行开始显示文件内容
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl 显示的时候,顺道输出行号!
  • more 一页一页的显示文件内容
  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
  • head 只看头几行
  • tail 只看尾巴几行

你可以使用 man [命令]来查看各个命令的使用文档,如 :man cp。

1.cat

cat命令用于查看纯文本文件(内容较少的),格式为“cat [选项] [文件]”。
在这里插入图片描述

2.tac

tac与cat命令刚好相反,文件内容从最后一行开始显示,可以看出 tac 是 cat 的倒着写!

3.nl(显示行号)

在这里插入图片描述

4.more

more命令用于查看纯文本文件(内容较多的),格式为“more [选项]文件”。
more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容。
在这里插入图片描述

5.less

在这里插入图片描述

6.head

在这里插入图片描述

7.tail

tail命令最强悍的功能是可以持续刷新一个文件的内容,当想要实时查看最新日志文件时,这特别有用,此时的命令格式为“tail -f 文件名”
在这里插入图片描述

三、文本文件编辑命令

1.tr命令

tr命令用于替换文本文件中的字符,格式为“tr [原始字符] [目标字符]”。

2.wc命令

wc命令用于统计指定文本的行数、字数、字节数,格式为“wc [参数] 文本”。
在这里插入图片描述

3.stat命令

stat命令用于查看文件的具体存储信息和时间等信息,格式为“stat 文件名称”。
在这里插入图片描述

4.cut命令

cut命令用于按“列”提取文本字符,格式为“cut [参数] 文本”。

5.diff命令

diff命令用于比较多个文本文件的差异,格式为“diff [参数] 文件”。
在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值