Linux学习——文件

                     

1.常见Linux目录名称

2.遍历目录

(1)绝对文件路径

用户可在虚拟目录中采用绝对文件路径引用目录名。绝对文件路径定义了在虚拟目录结构中 该目录的确切位置,以虚拟目录的根目录开始,相当于目录的全名。 绝对文件路径总是以正斜线(/)作为起始,指明虚拟文件系统的根目录。因此,如果要指 向usr目录所包含的bin目录下的用户二进制文件,可以使用如下绝对文件路径: /usr/bin 使用绝对文件路径可以清晰表明用户想切换到的确切位置。要用绝对文件路径来切换到文件 系统中的某个特定位置,只需在cd命令后指定全路径名:

注意,在上面的例子中,提示符中一开始有一个波浪号(~)。在切换到另一个目录之后,这 个波浪号被/usr/bin替代了。CLI提示符正是用它来帮助你跟踪当前所在虚拟目录结构中的位置。 波浪号表明shell会话位于你的主目录中。在切换出主目录之后,如果提示符已经进行了相关配置 的话,绝对文件路径就会显示在提示符中。

如果没有配置好提示符来显示当前shell会话的绝对文件路径,也可以使用shell命令来显示所 处的位置。pwd命令可以显示出shell会话的当前目录,这个目录被称为当前工作目录。pwd命令 的用法如下:

可以使用绝对文件路径切换到Linux虚拟目录结构中的任何一级,还可以从Linux虚拟目录中的任何一级跳回主目录:

(2)相对文件路径

相对文件路径允许用户指定一个基于当前位置的目标文件路径。相对文件路径不以代表根目 录的正斜线(/)开头,而是以目录名(如果用户准备切换到当前工作目录下的一个目录)或是 一个特殊字符开始。假如你位于home目录中,并希望切换到Documents子目录,那你可以使用cd 命令加上一个相对文件路径:

上面的例子并没有使用正斜线(/),而是采用了相对文件路径将当前工作目录从 /home/tongtong改为/home/tongtong/Documents,大大减少了输入内容。 另外,此例中还要注意的是,如果提示符经过配置可以显示出当前工作目录,它就会一直显 示波浪号。这表明当前工作目录位于用户home目录之下。

可以在任何包含子目录的目录中使用带有相对文件路径的cd命令。也可以使用一个特殊字符 来表示相对目录位置。 有两个特殊字符可用于相对文件路径中:  单点符(.),表示当前目录;  双点符(..),表示当前目录的父目录。

双点符在目录层级中移动时非常便利。如果你处在在主目录下的Documents目录中,需要切 换到主目录下的Downloads目录,可以这么做:

双点符先将用户带到上一级目录,也就是用户的主目录,然后/Downloads这部分再将用户带 到下一级目录,即Downloads目录。必要时用户也可用多个双点符来向上切换目录。

3.文件和目录列表

(1)基本列表功能

ls命令最基本的形式会显示当前目录下的文件和目录:

如果没安装彩色终端仿真器,可用带-F参数的ls命令轻松区分文件和目录。使用-F参数可 以得到如下输出:

-F参数在目录名后加了正斜线(/),以方便用户在输出中分辨它们。

要把隐藏文件和普通文件及目录一起显示出来,就得用到-a参数。下面是一个带有-a参数 的ls命令的例子:

所有以点号开头的隐藏文件现在都显示出来了。注意,有三个以.bash开始的文件。它们是bash shell环境所使用的隐藏文件。

-R参数是ls命令可用的另一个参数,叫作递归选项。它列出了当前目录下包含的子目录中 的文件。如果目录很多,这个输出就会很长。以下是-R参数输出的简单例子:

(2)处理文件

1)创建文件

你总会时不时地遇到要创建空文件的情况。例如,有时应用程序希望在它们写入数据之前, 某个日志文件已经存在。这时,可用touch命令轻松创建空文件。

2)删除文件

迟早有一天,你得删除已有的文件。不管是清理文件系统还是删除某个软件包,总有要删除 文件的时候。 在Linux中,删除(deleting)叫作移除(removing)①。bash shell中删除文件的命令是rm。rm 命令的基本格式非常简单。

注意,-i命令参数提示你是不是要真的删除该文件。bash shell中没有回收站或垃圾箱,文件 一旦删除,就无法再找回。因此,在使用rm命令时,要养成总是加入-i参数的好习惯。 也可以使用通配符删除成组的文件。别忘了使用-i选项保护好自己的文件。

rm命令的另外一个特性是,如果要删除很多文件且不受提示符的打扰,可以用-f参数强制 删除。小心为妙!

(3)处理目录

1)创建目录

在Linux中创建目录很简单,用mkdir命令即可:

系统创建了一个名为New_Dir的新目录。注意,新目录长列表是以d开头的。这表示New_Dir 并不是文件,而是一个目录。

可以根据需要批量地创建目录和子目录。但是,如果你想单单靠mkdir命令来实现,就会得 到下面的错误消息:

要想同时创建多个目录和子目录,需要加入-p参数:

mkdir命令的-p参数可以根据需要创建缺失的父目录。父目录是包含目录树中下一级目录的 目录。

2)删除目录

删除目录之所以很棘手,是有原因的。删除目录时,很有可能会发生一些不好的事情。shell 会尽可能防止我们捅娄子。删除目录的基本命令是rmdir。

默认情况下,rmdir命令只删除空目录。得先把目录中的文件删掉,然后才能在空目录上使用rmdir命令。

rmdir并没有-i选项来询问是否要删除目录。这也是为什么说rmdir只能删除空目录还是有 好处的原因。 也可以在整个非空目录上使用rm命令。使用-r选项使得命令可以向下进入目录,删除其中 的文件,然后再删除目录本身。

(4)查看文件内容

1)查看整个文件

cat命令 cat命令是显示文本文件中所有数据的得力工具。

还有一些可以和cat命令一起用的参数  -n参数会给所有的行加上行号。

这个功能在检查脚本时很有用。如果只想给有文本的行加上行号,可以用-b参数。

最后,如果不想让制表符出现,可以用-T参数。

-T参数会用^I字符组合去替换文中的所有制表符。

more命令

cat命令的主要缺陷是:一旦运行,你就无法控制后面的操作。为了解决这个问题,开发人 员编写了more命令。more命令会显示文本文件的内容,但会在显示每页数据之后停下来。我们 输入命令more /etc/bash.bashrc生成如图中所显示的内容。

more命令显示了一个标签,其表明你仍然在more程序中以及你现 在在这个文本文件中的位置。这是more命令的提示符。

less命令

从名字上看,它并不像more命令那样高级。但是,less命令的命名实际上是个文字游戏(从 俗语“less is more”得来),它实为more命令的升级版。它提供了一些极为实用的特性,能够实 现在文本文件中前后翻动,而且还有一些高级搜索功能。 less命令的操作和more命令基本一样,一次显示一屏的文件文本。除了支持和more命令相 同的命令集,它还包括更多的选项。

2)查看部分文件

tail命令  tail命令会显示文件最后几行的内容(文件的“尾部”)。默认情况下,它会显示文件的末尾10行。

可以向tail命令中加入-n参数来修改所显示的行数。在下面的例子中,通过加入-n 2使 tail命令只显示文件的最后两行:

-f参数是tail命令的一个突出特性。它允许你在其他进程使用该文件时查看文件的内容。 tail命令会保持活动状态,并不断显示添加到文件中的内容。这是实时监测系统日志的绝妙方式。

head命令  head命令,顾名思义,会显示文件开头那些行的内容。默认情况下,它会显示文件前10行 的文本:

文件的开头通常不会改变,因此head命令并像tail命令那样支持-f参数特性。head命令是 一种查看文件起始部分内容的便捷方法。

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值