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

tech2022-09-08  94

文章目录

文件处理命令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)