【Linux原理】第三章目录和文件管理(一)

“命令”严格一点来说,通常只代表了实现某一类功能的指令或程序的名称。

一、Linux命令的执行必须依赖于shell命令解释器,它位于操作系统内核与用户之间,负责接收用户输入的命令并进行解释,将需要执行的操作传递给系统内核执行,充当翻译官的角色。

Bash是Linux系统中默认使用的shell程序,文件位于/bin/bash。根据Linux命令和shell程序的关系,一般分为以下两种类型:

→内部命令:指的是集成与shell解释器程序内部的一些指令。

→外部命令:指的是属于shell解释器之外的命令。其使用方法基本上是一致的。

二、Linux命令行的格式。通用的命令行格式是:

命令字  [选项]  [参数]

中间以空格分开,多余的空格将被忽略。

1、命令字:即命令的名称,区分大小写,操作时需要细心。

2、选项:调节命令的具体参数,是一个功能选项,决定这条命令如何执行,有如下一些特性:

→不同的命令字,其能够使用的选项也不相同(就算字符相同意思也不相同)。

→选项的数量可以是多个,有时也可以省略(使用缺省默认功能)。同时使用多个选项,选项之间用空格分隔。

→使用单个字符的选项时,一般在选项前使用横杠“-”符号引导。称为短格式选项,也可以组合在一起使用。

→使用多个字符的选项时,一般在选项前面加“--”引导,称为长格式选项。如--help或者--color。

3、参数:命令字的处理对象,通常情况下命令参数是文件名、目录名或用户名等内容。可以使用一下几个辅助操作提高效率:

→tab键:自动向后补齐不完整的命令。按两次系统会输出可用列表。

→反斜杠“\”:强制换行,在下一行出现的“>”提示符后继续输入。

→快捷键Ctrl+U:删除当前光标之前的所有字符内容。

→快捷键Ctrl+K:删除当前光标之后的所有字符内容。

→快捷键Ctrl+L:快速清空当前屏幕中的显示内容。

→快捷键Ctrl+C:取消当前命令行的编辑。

三、获得Linux的命令帮助。

1、使用help命令。其用途是查看各shell内部命令的帮助信息。例如“help pwd”命令可以查看shell内部命令pwd的帮助信息。

例如ls --help用于显示对应命令字的格式及选项等帮助信息。

2、使用man手册页。比如执行man file命令用于判断文件的类型。

在阅读man手册页时将以全屏幕的文本方式显示,并且提供了交互式的操作环境可以往上翻页。如果需要将man手册页的内容保存到文本文件以便在其他系统中查看,可以结合col命令去除手册页中的格式控制字符,并将显示结果保存为新的文件。例如:

[[email protected] ~]#man ls | col -b > lshelp.txt表示将ls命令的帮助手册保存为文本文件lshelp.txt文件。

→col是一个命令程序,用于过滤文本中的一些特殊控制字符。

→管道符号“|”:用于将前面命令的输出结果作为后面命令的操作对象(输入),就好像一根管道一样。

→重定向输出:使用大于符号“>”表示,前面命令执行以后,其屏幕输出结果将保存到“>”后面指定的文件中,但是如果原来有这个文件那么文件内容将会被覆盖。另外使用“>>”追加符号,是在文件后面附加信息,不会覆盖原来的信息。

四、目录和文件的基本操作。

1、pwd命令----查看当前的工作目录(print working directory)。

2、Cd命令----切换工作目录(change directory)。默认将切换到当前用户的宿主目录(家目录)是Linux用户登录系统后的默认目录。根据其起始的参照目录不同,可以分为两种不同的形式:

→绝对路径:以根目录“/”作为起点,为了明确表明所要达到的是一个目录可以在后面加上一个目录分隔符“/”。

→相对路径:这种方式一般以当前工作目录作为起点,在开头不使用“/”符号,主要有以下几种形式:

u 直接使用目录名或文件名,表示当前目录中的子目录或文件位置。

u 使用一个“.”开头,明确表示以当前的工作目录作为起点。

u 使用两个“..”开头,表示以当前目录的上一级目录作为起点。

u 使用“~用户名”的形式开头,以指定用户的宿主目录作为起点。

另外使用“cd -”表示返回原来所在的目录。

3、ls命令----列表(list)显示目录内容。

Ls主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。下面列出几个比较常用的选项参数:

-l:以长格式(long)显示文件和目录的列表,以及详细信息。不使用时默认将以短格式进行显示。

-a:显示所有(all)自目录和文件的信息,包括以“.”开头的隐藏目录和隐藏文件。

-A:与-a的作用基本类似,但是“.”“..”的隐藏目录将不显示。

-d:显示目录(directory)本身的属性,而不是目录内容。

-h:以更人性化(human)的方式显示文件或目录的大小,需要结合-l一起使用。

-R:以递归(recursive)方式显示指定目录及子目录中的内容。

--color:在字符模式中使用颜色区分不同的文件,一般是这样的:

★深蓝色表示目录(类型用“d”表示)。

★白色表示一般文件(用“-”表示)。

★青蓝色:链接文件(用“l”表示)。

★绿色表示可执行的文件(一般在/bin、/sbin目录下)

★***表示设备文件(/dev目录下)(一般用b或c表示)b表示的是物理设备;c表示的是字符终端设备.

★红色表示压缩文件。

★粉红色:图片文件或是socket文件(用s表示)

★青***:管道文件 (用p表示)

同时查看多个文件的信息可以在中间使用空格键分开。

另外ls还可以结合通配符“?”或“*”以提高命令编写效率。对于经常使用的比较长的命令行,可以通过alias别名机制进行简化例如:

[[email protected] ~]# alias eth0=‘vi /etc/sysconfig/network-scripts/ifcfg-eth0‘在等于号“=”后面是进入vi编辑器对eth0网卡进行配置的意思;前面是给后面这一长串命令创建一个简单明了的别名,下次使用时只要输入“eth0”别名就等同于执行后面的操作。单独执行alias时,将显示当前用户环境中已经定义的别名列表。

4、du命令----统计目录及文件的空间占用情况(disk usage)。

-a:表示统计磁盘空间占用时的所有文件,不仅仅只是目录。

-h:以更人性化的方式显示统计结果,会显示K、M等单位。

-s:只统计每个参数所占用空间的(summary)大小而不是统计每个子目录文件的大小。

结合-sh选项可以统计文件夹内所有文件总共占用的空间大小,并且进行友好显示。

结合-ah选项可以查看所有文件和子目录所占用的空间大小。

五、创建目录和文件。

1、mkdir命令----创建新的目录(make directory)。

用于创建一个空目录,使用创建的目录位置作为参数(可以有多个)。如果需要一次性创建嵌套的多层目录,必须结合“-p”选项。

2、touch----创建空文件,可以同时创建多个文件。例如:

[[email protected] benet]# touch huamulan.rmvb nazhanaohai.mp4

另外一种方法是使用vi编辑器直接创建文件以及输入文件内容。例:

[[email protected] benet]# vi aaa.txt在当前目录下就会自动创建文件aaa。

还有一种方法是使用命令echo创建。

[[email protected] benet]# echo “111”> "bbb.txt"创建文件bbb.txt内容111。

3、ln命令----创建链接(Link)文件,类似与快捷方式。提高用户定位文件或目录的效率,分为软连接和硬链接两种类型。

软链接与硬链接之间的区别在于:软连接删除原始文件后将失效,但硬链接仍旧可用;软链接适用于文件或目录,硬链接只可用于文件。

使用ln命令时,默认创建的是硬链接,在创建软链接时必须结合“-s”而且他们的节点会不相同,文件都是以节点的形式存在的。例如:

[[email protected] benet]# ln -s aaa.txt 111.txt表示建立aaa.txt的软链接。

[[email protected] benet]# ls -i 111.txt  查看软链接111.txt的节点ID。

六、复制、删除、移动目录和文件。

1、Cp命令----复制(copy)文件或目录。基本使用格式如下:

cp   [选项]…   源文件或目录…  目标文件或目录…

需要复制多个文件或目录时,目标位置必须是目录,而且必须已经存在,cp常用的几个选项如下所示:

-f:覆盖目标文件或者目录时不进行提醒,强制(force)复制。

-i:覆盖时提醒用户确认(interactive,交互式)。

-p:复制时保持源文件的权限,属主及时间标记等属性不变。

-r:复制目录时必须使用此选项,表示递归复制所有文件及目录。

[[email protected] ~]# cp -r ./benet /etc/表示将当前目录的benet目录复制到根目录下面的etc目录里面。

2、rm命令----删除(remove)文件或目录。注意删除的文件难以恢复,使用目录或文件名作为参数。常用的几个选项如下所示:

-f:删除目标文件或者目录时不进行提醒,强制(force)删除。

-i:删除文件或目录时提醒用户确认。

-r:删除目录时必须使用此选项,表示递归删除整个目录树。

通常是使用 “rm -rf 加文件”结合使用。例如:

[[email protected] etc]# rm -rf benet表示强制删除本目录下的benet目录。

3、mv命令----移动(move)文件或目录。相当于剪切和粘贴。如果目标位置与源位置相同,则效果相当于为文件或目录改名。格式:

mv   [选项]…   源文件或目录…  目标文件或目录…

需要移动多个文件或者目录时,目标位置必须是目录,而且已经存在。移动时只要输入目标目录的位置就可以了。原始位置将消失。

七、查找目录和文件及其它参数。

1、which命令----查找Linux命令文件并显示所在的位置。其搜索范围主要由用户的环境变量PATH决定(可以执行etho $PATH命令查看),这个范围也是Linux系统在执行命令或程序时的默认搜索路径。此查找环境中还包括用户环境中所设置的命令别名。若希望在所有路径中查找,可以添加“-a”选项。注意此处只能查找命令字。而且shell内置命令没有对应的程序文件如cd,因此which找不到内置命令。

2、Find命令----查找文件或目录,在查找时使用递归的方式,使用形式相当灵活,格式用法如下:

find   [查找范围]    [查找条件表达式]

较常用的几种查找条件类型如下所示:

按名称查找:关键字-name根据名称进行查找。

[[email protected] ~]# find /etc -name ifcfg-eth0表示在etc里面查找名称为ifcfg-eth0的文件。

按文件大小查找:关键字为-size根据目标的文件大小查找。

[[email protected] ~]# find -size +53k加号的意思是53k以上的意思。

按文件属主查找:关键字为-user根据是否属于目标用户来查找。

按文件类型查找:关键字为-type根据文件类型进行查找。普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。块设备的意思是成块读取数据的设备(如硬盘、内存等),字符设备是指单个字符读取数据的设备(如键盘、鼠标等)。

另外如果使用通配符“*”“?”时最好用双引号把文件名括起来。如:

[[email protected] ~]# find -type d -name "ben*"前面表示查找所有类型为目录(d)的文件;后面意思是目录名称前面是“ben”的所有文件。

find: 路径必须在表达式之前,例如:下面这个格式

[[email protected] ~]# find /etc -name "*.conf" | wc -l还可以结合管道符号使用。后面是表示显示行数的意思。

附件下载地址:http://down.51cto.com/data/2042388

时间: 2024-10-08 10:17:24

【Linux原理】第三章目录和文件管理(一)的相关文章

linux 第三章目录文件管理(上)

享受生活  热爱挑战                                                                                  明远分享         linux  第三章目录文件管理(上) 每章一段话      人生的确很累,看你如何品味:每天多寻快乐,烦恼别去理会:短短数十寒暑,             何不潇 洒面对.人之所以快乐,并不是因为得到的多,而是因为计较的少,生               活要用大海的胸怀去面对,当别人放

第四章 目录和文件管理(二)

第四章  目录和文件管理(二) 享受生活 热爱挑战                                                                                                                          明远分享 每章一段话:                       无论做什么,你都要勇往直前:无论有多难,你都要多坚持一下.千万不要低估你实现梦想的能力.                   要求: Ø

【Linux原理】第四章目录和文件管理(二)

在Linux系统中,绝大多数的配置文件都是以普通文本格式保存的,这些配置文件决定着系统及相关服务,程序的运行特性. 一.查看文件内容. 1.cat命令---显示并连接(concatenate)文件的内容.在实际应用中更多的用于查看文件内容.如果需要查看多个文件的内容,可以添加多个文件路径,中间以空格隔开.格式为: [[email protected] benet]# cat aaa.txt bbb.txt表示同时查看aaa.txt和bbb. 2.more和less命令----分页查看文件内容.当

【Linux原理】第一章安装Linux操作系统

Linux操作系统由Linux内核和各种外围程序组成. Linux内核是一个特殊的软件程序,用于实现CPU和内存分配.进程调度.设备驱动等核心操作,以面向硬件为主. 外围程序包括分析用户指令的解释器.网络服务程序.图形桌面程序等各种应用型的软件程序,以面向用户为主. Linux内核最初由芬兰大学生李纳斯·托沃兹(linus torvalds)在1991年10月发布,主要使用C语言及一小部分汇编语言开发而成.官方网站是http://www.kernel.org/.内核标识是一个名为tux的小企鹅.

Linux 中最常用的目录及文件管理命令

一.查看文件的命令 对于一个文本文件,在linux中有多种查看方式来获知文件内容,如直接显示整个文本内容.分页查看内容.或者只查看文件开头或末尾的部分内容.在linux可以用不同的命令来实现. 1. cat -显示并连接文件的内容 该命令是应用最为广泛的内容查看命令.使用该命令时,只需要把要查看的文件路径作为参数即可.例如,以下操作可以查看/etc/sysconfig/network-scripts/ifcfg-eth0配置文件的内容,了解第一块网卡的配置信息. 2. more 和 less  

Linux学习第三章

4-1-1 shell特性 指令history 查看历史指令 root的历史指令存放在 /.bash_history上,默认保存1000条 指令!!查看上一条历史指令和结果 指令!$  上一条指令的最后一个变量 指令!100 执行历史第100条指令 指令!c TAB键能自动补充指令 指令alias 查看命令别名 指令alias aa bbb 设置指令bbb的别名aa,输入指令aa就能等于输入指令bbb 指令unalias aa 解除别名aa ls *.txt 把txt结尾的列出 ls 1* 把1

linux(centOS7)的基本操作(二) 目录和文件管理

1.显示当前工作目录的绝对路径 pwd 2.显示当前工作目录下的子目录和文件 ls [-l] [-h] [-a] 如果只调用ls,子目录和文件会简单的罗列出来,-l表示将其以详细列表的形式展示,-h表示以适合人阅读的格式显示,-a表示同时显示隐藏目录或文件,即以点(.)开头的,例如/root/.ssh 3.切换工作目录 cd [path] 其中,path为要切换到的目标目录,可以使用绝对路径或相对路径.path为空或~时,表示切换到当前登录用户的家目录:path为两个点(..)时,表示切换到当前

【Linux】第三章 移植开源库

在开始移植前,默认已经下载好库文件并解压好 移植三部曲: ./configuer : 配置参数 make : 编译 make install : 安装 configure 配置参数说名 1 说明 在linux 中,经常需要用到交叉编译,在ubuntu系统中,交叉编译可以运行在arm平台上的bin文件.对于大部分代码, 都有configure文件,让开发者进行配置,配置完毕之后自动生成makefile,然后进行编译.本文旨在说明configure中 常用的一些参数. 2 开发环境 软件环境: ub

编译原理-第三章 词法分析-3.7 从正则表达式到自动机-从正则表达式构造NFA

基于MYT算法从正则表达式构造NFA 基本思想: 性质: 对于加括号的正则式(s),使用N(s)本身作为它的NFA 一.构造识别ε和字母表中一个符号的NFA 1.特点 仅一个接受状态,它没有向外的转换 2.示例 二.构造识别主算符为选择正则式的NFA 1.特点 仅一个接受状态,它没有向外的转换 2.示例 三.构造识别主算符为连接正则式的NFA 1.特点 仅一个接受状态,它没有向外的转换 2.示例 四.构造识别主算符为闭包正则式的NFA 1.特点 仅一个接受状态,它没有向外的转换 2.示例 五.例