Linux——常用命令(目录和文件)

一、目录操作命令
 1、ls:查看当前或指定目录下的内容

[root@localhost ~]# ls -lh /

在这里插入图片描述
  每个目录的作用:
在这里插入图片描述
 2、cd:change directory,切换所在目录,是Shell内置命令,所有用户都可执行
  a、特殊符号:
   ~:代表用户的家目录(或者只输入cd也会回到家目录)
   -(减号):上次所在的目录
   .:当前目录
   ..:上级目录
  b、路径
   绝对路径:以根目录为参照物,从根目录开始,一级一级进入目录
   相对路径:以当前目录作为参照物,进行目录查找
 3、pwd:显示当前目录

[root@localhost bin]# pwd

在这里插入图片描述
 4、mkdir:make directories,创建目录,命令所在路径为/bin/mkdir,所有用户都可执行
  选项:-p——递归创建目录

[root@localhost ~]# mkdir -p  123/456/567 

  注意:命令参数前通常没有/,否则目录就不是创建在当前目录,而是根目录下
 5、rmdir:remove empty directories,删除空目录(注意只能删除空目录),命令所在路径为/bin/rmdir,该命令不常用,通常使用rm来删除目录和文件
  选项:-p——递归删除目录

rmdir -p 123

  使用rm删除:r表示删除目录,f表示强制删除不必询问,该命令一定要小心使用,因为一旦删除就找不回来了,但是可以预装extundelete来实现文件找回

[root@localhost ~]# rm -rf 123

  Tip
1️⃣如果要一次删除多个文件,只需要使用空格将要删除的文件隔开即可

rm -rf 123 234

2️⃣如果要清空文件夹,需要使用通配符:

rm -rf /tmp/*

二、文件操作命令
 1、touch:创建空文件或者修改文件时间(若文件不存在则创建文件,若文件存在则会修改文件最后一次的修改时间),命令所在路径/bin/touch,所有用户均可执行,用来修改文件的时间戳

[root@localhost ~]# touch 123

  Tip:编辑文件的一种方式,使用>>,输出重定向,会将前面命令的输出结果追加写入后面的文件中(若文件不存在则创建文件后写入前面命令的输出结果,如果文件存在,则将前面命令的输出结果追加到文件的内容中去),示例:echo 本来是将内容输出到屏幕上,有了>>则会将输出结果写入到123这个文件中去

[root@localhost ~]# echo 11111111111111 >> 123

 2、stat:查看文件或文件系统的详细信息,可以看到文件的三个时间,所在路径/usr/bin/stat,所有用户可执行
在这里插入图片描述
在这里插入图片描述
  Tip:Linux中不记录文件的创建时间
 3、cat:查看文件内容,不适合查看大文件,因为内容展示不全
在这里插入图片描述
  Tip:man——查看命令的帮助文档

man cat

 4、more:分屏显示文件内容,more中常用的交互命令有:
  空格键:向下翻页
  b:向上翻页
  回车键:向下滚动一行
  /字符串:搜索指定的字符串
  q:退出

[root@localhost ~]# more install.log

 5、less:分行显示文件内容,向上箭头上翻,向下箭头下翻

[root@localhost ~]# less install.log

 6、head:显示文件开头内容,选项-n——从文件开头开始向后显示的行数,默认展示10行

[root@localhost ~]# head -n 20 install.log

 7、tail:显示文件尾部内容
在这里插入图片描述

[root@localhost ~]# tail install.log

 8、ln:在文件之间建立链接,命令所在路径为/bin/ln,所有用户可执行
  在Linux中文件名称保存的位置在上级目录的block块中,举例来说/root目录下有文件abc,则/root目录对应的block中会保存abc这个文件的文件名和abc这个文件的INode信息,在查找abc这个文件的时候会根据其INode信息找到该文件的block位置然后找到文件内容,也就是说在Linux中文件夹的block中保存的是该文件夹下的文件的名字和INode信息,文件的block中保存的是该文件的内容,因此我们在找一个文件的时候需要先找其父目录,直到找到根目录,根目录的INode号是固定的值2:
在这里插入图片描述
  命令格式:

ln [选项] 源文件 目标文件

   选项:
    -s:建立软链接。如果不加"-s",则默认建立硬链接文件
    -f:强制,如果目标文件已经存在,则删除目标文件后再建立链接文件
  示例:
   1️⃣创建硬链接:建立硬链接文件,目标文件没有写文件名,会和原名一致,也就是/root/cangls和/tmp/cangls是硬链接文件,也可以执行目标文件名

touch cangls #在/root下创建文件
ln /root/cangls /tmp/ #创建硬链接

    硬链接的特征:建立硬链接的两个文件的INode号是相同的,在创建好之后不好区分哪个是硬链接哪个是源文件,在删除硬链接的文件时,block块删除与否取决于引用计数是否为1
在这里插入图片描述
在这里插入图片描述
   2️⃣创建软链接:类似于Windows中的快捷方式

touch cde #/root下创建文件
ln -s /root/cde /tmp/cde_s #创建软链接

在这里插入图片描述
   软链接会用箭头指向源文件的位置,且INode号不同,引用计数不会增加
    软链接的特征:使用软链接一定要使用绝对路径,删除软链接的源文件是会直接将block删除的(软链接不会增加引用计数),这也是为什么删除源文件后软链接不能使用的原因能
在这里插入图片描述
在这里插入图片描述
三、目录和文件都能操作的命令
 1、rm:强大的删除命令,不仅可以删除文件,也可以删除目录,命令所在路径/bin/rm,所有人可执行
  命令格式

rm [选项] 文件或目录

  选项:
   -f:强制删除
   -i:交互删除,每删除一个文件都会询问用户
   -r:递归删除,可以删除目录(无论删除文件还是目录都可以带上该参数)
 2、cp:复制文件和目录,命令所在路径/bin/cp,所有用户可执行
  命令格式:

cp [选项] 源文件 目标文件

  选项:
   -a:相当于-dpr选项的集合,会使目标文件和源文件完全相同,包括文件属性
   -d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
   -i:询问,若目标文件已经存在,则会询问是否覆盖
   -p:复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
   -r:递归复制,用于复制目录
 3、mv:剪切(移动文件或改名),命令所在路径/bin/mv,所有用户可执行,源文件和目标文件在同一个目录下时就是改名
  命令格式:

mv [选项] 源文件 目标文件

  选项:
   -f:强制覆盖,如果目标文件已经存在,则不询问直接覆盖
   -i:交互移动,若目标文件已存在,则询问用户是否覆盖(默认)
   -v:显示详细信息

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值