Linux常用命令大全 ---> 文件处理命令(一)

tech2022-09-08  107

文章目录

文件处理命令1. 命令格式与目录处理命令ls2. 目录处理命令2.1 mkdir命令2.2 cd命令2.3 pwd命令2.4 rmdir命令2.5 cp命令2.6 mv命令2.7 rm命令 3. 文件处理命令3.1 touch命令3.2 cat命令3.3 tac命令3.4 more命令3.5 less命令3.6 head命令3.7 tail命令 4. 链接命令4.1 ln命令4.2 软链接特征4.3 硬链接的特征4.4 软连接和硬链接明显的区别

文件处理命令

1. 命令格式与目录处理命令ls

命令格式: 命令 [-选项] [参数] 举例:ls -la /etc     说明: (1) 个别命令给你使用不遵循此命令 (2)当有多个选项时,可以写在一起 (3)简化选项与完整选项 -a等于–all                             目录处理命令:ls   命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls 执行权限:所有用户 功能描述:显示目录文件 语法:ls 选项[-ald] [文件或目录] 选项:         -a   显示所有文件,包括隐藏文件          -l   详细信息显示         -d   查看目录属性       举个栗子:

上图中可以分为七个部分:

第一个部分: 文件类型和权限 分为两个部分 第一个字符分为一个部分,代表一个文件的类型(所有者 、所属组、其他人)。常见的文件类型:-代表的就是文件 d代表是一个目录 l代表软连接 不常见的文件类型:字符设备文件,块设别文件,套接字文件,管道符文件 是系统特殊文件,一般不用来进行操作。 第二个部分: 待变引用计数,代表这个文件调用或引用过几次,这个引用计数对文件和目录来讲,只在硬链接这个地方有作用。 第三个部分: 文件的所有者 第四个部分: 文件的所属组 第五个部分: 文件的大小 –h(human)人化显示大小 第六个部分: 文件最后修改的时间(没有修改过就是创建的时间)Linux没有创建时间的概念。有访问时间,最后一次访问时间,文件的状态修改时间,文件的数据修改时间,如果一个文件没有改过就是创建文件时间。 第七部分: 文件名

小提示: (1) 对文件来说执行权限x是最高权限,权限够用就好只要够使用,就不给最大的权限,一般来对文件来说读写就够了,只有需要让这个文件运行的时候(是个命令或者是脚本的时候)如果是个日志是没有必要的。前三个代表所有者的权限,依次类推

(2) 如果想看一个目录的属性 就用-d选项。-ld 配合使用。 i结点,每个文件和目录都有自己的id号,系统靠这个索引号来搜索和查询这个文件。ls –i (inode)看文件的i结点

小总结:

ls –a(可以看隐藏文件) -l(文件的详细信息) –d(查看目录的详细信息) –h(人性化显示大小) -i(可以查询任何一个文件的i节点)      

2. 目录处理命令

2.1 mkdir命令

目录处理命令:mkdir 命令英文原意:make directories 命令所在路径:/bin/mkdir 执行权限:所有用户 语法:mkdir -p [目录名] 功能描述:创建新目录                   -p 递归创建     什么是递归创建那??? 举个栗子:mkdir /tmp/test/abc 因为没有test这个目录,但是又想在这个目录下创建子目录,这时必须加-p这选项。(递归创建)      

2.2 cd命令

目录处理命令:cd 命令英文原意: change directory 命令所在路径:shell内置命令 执行权限:所有用户 语法:cd [目录] 功能描述:切换目录  

举个栗子: cd /tmp/test 切换到指定目录 cd … 回到上一级目录       

2.3 pwd命令

目录处理命令:pwd 命令英文原意:print working directory 命令所在路径:/bin/pwd 执行权限:所有用户 语法:pwd 功能描述:显示当前目录      

2.4 rmdir命令

目录处理命令:rmdir 命令英文原意:remove empty directories 命令所在路径:/bin/rmdir 执行权限:所有用户 语法:rmdir [目录名] 功能描述:删除空目录  

小提示: (1)在Windows中如果想创建一个目录,就只能创建一个目录里,在Linux的命令行下可以创建多个目录。 (2)rmdir只能删除空目录,目录里面有内容就不能删除。所以用的并不多,因为太菜了。      

2.5 cp命令

目录处理命令:cp 命令英文原意:copy 命令所在路径:/bin/cp 执行权限:所有用户 语法:cp -rp [原文件或目录] [目标目录]         -r 复制目录         -p 保留文件属性 功能描述:复制文件或目录     小提示: (1) 如果复制文件,直接敲cp命令,可以同时复制多个文件。如果把一个文件拷贝到另一个位置,相当于在另一个位置创建了一个新文件,所以最后的时间就会变化。 如果把一个日志做一个备份,不希望文件最后的更改时间发生变化,可以加一个选项-p(可以保存复制文件的属性)可以复制的时候可以改名。 (2) 如果是目录,要增加一个选项-r       

2.6 mv命令

目录处理命令:mv 命令英文原意:move 命令所在路径:/bin/mv 执行权限:所有用户 语法:mv [原文件或目录] [目标目录] 功能描述:剪切文件、改名     小提示: 可以剪切一个或多个目录和文件,这个跟cp不一样,mv不需要加-r这个选项的。        

2.7 rm命令

目录处理命令:rm 命令英文原意:remove 命令所在路径:/bin/rm 执行权限:所有用户 语法:rm -rf [文件或目录]           -r 删除目录           -f 强制执行 功能描述:删除文件  

小提示: (1)windows有两种返回的机会:删除文件的时候 清除回收站的时候 (2)Linux当中只有一个反悔的机会(不加-r) 如果删除了可以恢复过来吗?恢复软件是有的,但是看情况,并不是所有的删除都能恢复过来的。如果要删除目录需要加选项-r。

小建议: (1) 删除任何文件之前,做好相应的备份。 (2)一旦发现误删除的情况,尽量在确认情况以后,不要再对硬盘做过多的读写操作,包括查找等,做的读写操作越多,恢复的可能性越小。 (3)最好不要发生这样的事情。      

3. 文件处理命令

3.1 touch命令

文件处理命令:touch 命令所在路径:/bin/touch 执行权限:所有用户 语法:touch [文件名] 功能描述: 创建空文件  

提示: 如果创建一个新文件的时候想要起一个文件名带空格,需要用双引号括起来,否则相当于创建两个文件      

3.2 cat命令

文件处理命令:cat 命令所在路径: /bin/cat 执行权限:所有用户 语法:cat [文件名] 功能描述:显示文件内容                   -n 显示行号(number) 小提示:如果是一个很长的文件用more来查看,但是不能往上翻,这也是cat的一个缺点。      

3.3 tac命令

文件处理命令:tac 命令所在路径: /usr/bin/tac 执行权限:所有用户 语法:tac [文件名] 功能描述:显示文件内容(反向列示)  

小提示: 没有-n这一个参数,也就是不能显示行数了      

3.4 more命令

文件处理命令:more 命令所在路径:/bin/more 执行权限:所有用户 语法:more [文件名]

在文本中进行操作:   (空格)或f   翻页  (Enter)       换行  q或Q          退出 功能描述:分页显示文件内容    缺点: 不能向上翻页,less命令解决了这个缺陷。    

3.5 less命令

文件处理命令:less 命令所在路径:/usr/bin/less 执行权限:所有用户 语法:less [文件名] 功能描述:分页显示文件内容(可向上翻页)

提示:less可以向上翻页,more有的功能基本都有,还可以使用pgup 上箭头进行操作、还有搜索功能:/搜索关键词 按n(next)可以向下搜索。      

3.6 head命令

上面几个命令是对全文进行浏览的时候使用的命令,如果只想看前几行或者是后几行,可以使用head和tail命令   文件处理命令:head 命令所在路径:/usr/bin/head 执行权限:head [文件名] 功能描述:显示文件前面几行                   -n 指定行数     小提示: head如果不指定前几行,而直接用head 加文件名那么默认显示前十行      

3.7 tail命令

文件处理命令:tail 命令所在路径:/usr/bin/tail 执行权限:所有用户 语法:tail [文件名] 功能描述:显示文件后面几行  -n 指定行数   -f 动态显示文件末尾内容     小提示: tail如果没有指定行数,那么也是默认显示后十行。加-f可以动态的显示内容,如果日志发生了变化,那么就实时的显示内容。      

4. 链接命令

4.1 ln命令

文件处理命令:ln 命令英文原意:link 命令所在路径:/bin/ln 执行权限:所有用户 语法:ln -s [原文件] [目标文件] -s 创建软连接 功能描述:生成链接文件     举个栗子: ln -s /etc/issue /tmp/issue.soft     创建文件/etc/issue的软连接 /tmp/issue.soft ls /etc/issue /tmp/issue.hard        创建文件/etc/issue的硬链接/tmp/issue.hard      

4.2 软链接特征

1 . lrwxrwxrwx l代表软链接 2 . 文件不大,因为只是一个链接文件 3 . /tmp/issue.soft -> /etc/issue 箭头指向源文件,用ls -l 查询的时候,可以看出来源文件是谁。     小提示: 软连接文件相当于Windows当中的快捷方式。连接文件的权限都是rwx,(新创建的软连接文件都是rwx)所有人可以操作的文件,但是这个权限不决定原文件的权限,类似于windows的快捷方式,方便快捷的找到经常使用的东西,方便进行规划,方便进行管理。软连接用的还是比较多的,文件大小还是比较小的。   举个栗子: 软连接类似在Windows中相当于把D盘的目录给你成一个快捷方式放在一个桌面上,方便进入目录查找文件       

4.3 硬链接的特征

1 . 拷贝cp -p + 同步更新。比如在源文件中输入内容echo “www.lampbrother.net” >> /etc/issue,硬链接文件也会显示内容。 2 . 通过i结点识别 3 . 不能跨分区 4. 不能针对目录使用     小提示:

(1) 如何区分硬链接文件那???(硬链接文件和原文件的i结点相同),可以用ls –i 选项来区分,一个文件只有一个i节点,一个i节点不止对应一个文件,硬链接就是一个栗子,一个i节点映射到多个文件,把一个文件删除,另一个文件依然存在,这个跟软连接有所不同。为什么硬链接可以同步更新??? 对一个文件进行写操作的时候,在内核的层面进行操作,其实针对的是i结点,因为这个i节点同时映射到这两个文件,所以可以同步更新。

(2) 硬链接在Linux当中用的比较少,应用的情景并不多,如果在Linux服务器上写一个脚本,如果中途没写完,委托一个人,这时可以生成一个硬链接,存放在它经常使用的目录里面,一是可以同步更新,二相当于做一个备份(防止委托人误删除)。      

4.4 软连接和硬链接明显的区别

  (1)硬链接不可以跨分区,软连接可以跨分区。

(2)硬链接不能针对目录,软连接可以针对目录使用

最新回复(0)