栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux文件命令

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux文件命令

文章目录
  • Linux文件命令
    • Linux一切皆文件
      • pwd
      • cd
      • ls
        • 选项
        • 结合通配符(查找)
      • alias
      • du
        • 常用选项
      • mkdir
        • 常用选项
      • touch
      • ln
      • cp
        • 常用选项
      • rm
        • 常用选项
      • mv
      • which
      • find
        • 常用的查找条件类型
      • 命令执行的优先级

Linux文件命令 Linux一切皆文件 pwd
  • 查看当前工作目录(绝对路径)
cd
  • 将用户的工作目录更改到其他位置

    命令结果
    cd 目标位置打开目标位置
    cd ~回到当前用户家目录
    cd 空白回到当前用户家目录
    cd -回上次打开的目录
  • 以根目录为起点的路径就是绝对路径,无论当前路径如何都可以以绝对路径切换到该路径

  • 相对路径以当前所在的目录为起点

    表现形式说明示例
    直接使用目录名文件名表示当前目录中的子目录,文件的位置grub.conf
    以一个“.”开头表示以当前目录为起点./grub.conf
    以两个“.”开头表示以当前目录上一级目录为起点…/vmlinuz
    以“~用户名”开头表示以指定用户的宿主目录为起点~teacher
ls
  • 列表显示目录内容
选项
  • -l:以长格式(Long)显示文件和目录的列表,包括权限、大小、最后更新时间(相当于"ll")

    得到七个字段的链表

    • 第一字段:文件属性字(第一个字符代表文件类型"-普通文件",“d文件夹”,“l软链接文件”,第二三四个字符所有者的权限,第五六七个字符是组成员的权限,第八九十个字符是其他用户的权限“r为读权限,w写权限,x运行权限”)
    • 第二字段:文件硬链接数(文件:文件的硬链接数,目录:子目录数(至少有两个“.”和“…”))
    • 第三字段:文件/目录拥有者
    • 第四字段:文件/目录拥有者所在的组
    • 第五字段:文件占用的空间(默认以字节为单位,“如果是目录则指的是不包含子目录和文件的该目录大小”)
    • 第六字段:最近被访问及修改的时间
    • 第七字段:文件名(如果是一个符号链接(软链接文件),那么会有一个“->”箭头符号,后面跟一个它指向的文件名)
  • -a:显示所有子目录和文件,包括以“.”开头的隐藏目录和隐藏文件

  • -A:与-a基本类似,但不会显示“.”和“…”

  • -d:显示目录本身的属性,而不是显示目录中的内容(可以和-l组合使用)

  • -h:以更人性化的方式显示目录或文件的大小

    默认大小单位为字节(B),使用-h后将显示为KB,MB等,需要和-l 一起使用

  • -R:以递归的方式显示指定目录及其子目录中所有的内容

  • –color:在字符模式中以颜色区分不同的文件。默认已开启

    通常情况下,深蓝色表示目录,黑白显示一般文件,绿色为可执行文件,黄色表示设备文件,红色表示压缩文件

  • -i:显示文件和目录的inode号

  • -t:以时间排序,最新的文件会排在上面

  • -r:表示反向排序,倒序输出(适合组合使用)

结合通配符(查找)
  • “?”:代表任意一个字符,有且仅有一个字符(几个“?” == 几个字符)
  • “*”:代表任意数个字符,可以是0个或者1个或者多个
  • “[]”:表示可以匹配字符组中的任意一个字符[abc],[a-f](一个字符)
alias
  • 设置别名,简化较长的命令
    • alias 命令别名=‘命令’
    • 等号两侧无空格
    • 仅在当前shell环境中有效
  • 例:alias myls=‘ls -alh’
  • 取消别名:unalias 命令别名
du
  • 统计目录及文件空间占用情况
    • du [选项] [文件或目录]
常用选项
  • -a:统计磁盘空间占用时包括的所有文件,不仅仅只统计目录

  • -h:以更人性化的方式(默认KB计数,不显示单位)显示出统计结果

  • -s:只统计所占用空间总大小而不是统计每个子目录文件的大小(不可与-a组合,与-h组合只显示当前目录总大小)

  • –max-depth=n:统计所有小于等于第n层的目录的总大小

    • 例:统计出/var/log中子目录的大小

      du -h --max-depth=1 /var/log/

mkdir
  • 创建新的空目录

    mkdir [选项] 目录位置和名称

    大括号{}可创建附带不同后缀的同名目录newdic{1,2,3,4}(得到目录newdic1,newdic2,newdic3,newdic4)

常用选项
  • -p aa/bb/cc/dd

    得到嵌套的目录(bb为aa的子目录,cc为bb的子目录,dd为cc的子目录)

touch
  • 创建空文件

    touch 不存在的一个目标文件

  • 更新文件的时间标记

    touch 存在的一个文件或目录

  • 经常用于创建多个新的空文件(空格连接)

可用{}加".后缀名"拓展创建多个

touch {11,22,33}.txt (得到11.txt,22.txt,33.txt)

ln
  • 参加链接文件

  • 为文件或目录建立链接文件,类似于Windows系统的快捷方式

  • 链接文件类型

    • 软链接(又称符号链接)

      ln [-s] 源文件或目录 链接文件或目标位置

      • 源文件的路径最好用绝对路径,这样链接文件才可以任意移动,否则链接文件只会在相对路径寻找源文件
    • 硬链接(与源文件一样占用磁盘空间)

      ln 源文件 链接文件或目标位置

    在Linux中,文件名和文件的数据是分开存储的
    在Linux中,只有文件的硬链接数为0才会被删除
    在日常工作中,几乎不会建立文件的硬链接,不能对目录做硬链接

    当一个文件拥有多个硬链接时,对文件内容修改会影响到所有文件名;但是删除一个文件名不影响别的文件名的访问。删除一个文件名只会使硬链接数减一

    文件类型软连接文件硬链接文件
    删除源文件后失效仍可用(文件占用空间与源文件相同)
    使用范围适用于文件和目录仅适用于文件
    保存位置与源文件可在不同的文件系统必须与源文件在同一个文件系统(即同一分区)中
    与源文件的关系相当于快捷方式相当于给文件起个别名
    inode号码inode号码不同inode号码相同
cp
  • 将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录,常用于备份文件
  • cp [选项] 源文件或目录 目标文件(/var/123.txt 可以复制过程中更改目标文件文件名)或目录(/var/ )
常用选项
  • -f:覆盖目标同名文件或目录时不提醒,直接强制复制(仅在使用绝对路径/bin/cp和cp时使用-f才可以不提醒)(/bin/cp -f 和 cp -f)

  • -i:覆盖目标同名文件或目录时提醒用户确认(cp命令默认带上-i)回答yes或者no

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

  • -r:复制目录时必须使用此选项,表示递归复制所有文件及子目录(cp aa/ /mnt -r)

  • -a:保持原属性的情况下复制目录(-pr ,-dR)

    注:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在

    cp 123.txt abc.txt abc123.txt /etc

备份配置文件和目录举例:

  • cp /etc/host.conf /etc/host.conf.bak(backup,备份文件)

  • cp host.conf{,.bak} cp host.conf host.conf.bak

  • mkdir yum_bak

    cp -r /etc/yum.res.d/ /etc/yum.conf yum_bak/ (复制文件和目录到目标文件夹)

rm
  • 删除文件或目录
  • rm [选项] 要删除的文件或目录
常用选项
  • -f:删除目标文件时不提醒,直接强制删除

  • -i:删除目标文件或目录时提醒用户确认(推荐使用)

  • -r:递归删除目标目录及其子目录(需要逐层确认)

    注:删除目录下文件时建议最好先切换到目录下在执行rm -rf命令

mv
  • 将指定的问价或目录转移位置
  • 如果目标位置与源文件相同,则相当于执行重命名操作(仅单个)
    • 批量重命名rename jpg png *.jpg(将所有.jpg后缀的文件重命名为.png后缀)
  • mv [选项] 源文件或目录 目标文件或目录(可以同时重命名)
which
  • 查找命令文件存放目录(which ls ;which history)

  • 搜索范围由环境变量PATH决定(echo $PATH)(可以将外部命令加入PATH以实现识别查找)

    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin(查找自左往右)

  • which 命令|程序名(默认当找到第一个目标之后不再继续查找)

  • which -a 命令|程序名(在所有搜索路径中查找)

    使用which查找内部命令时,将找不到对应的程序

find
  • 采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
  • find [查找范围] [查找条件表达式]
常用的查找条件类型
查找类型关键字说明
按名称查找-name根据目标文件的名称进行查找,允许使用“*”及“?”通配符
按文件大小查找-size根据目标文件大小进行查找,一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括kB(注意k是小写)、MB、GB
按文件属性查找-user根据文件是否属于目标用户进行查找
按文件类型查找-type根据文件的类型进行查找,文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。块设备文件(b):成块读取数据额设备(硬盘,内存,光驱)。字符设备文件(c):按单个字符读取数据的设备(键盘,鼠标)
按文件修改日期查找-m +time(-time)按文件修改日期匹配,一般使用“+”、“-”号,“+”指大于多少时间,“-”指小于多少时间
  • 各表达式之间使用逻辑运算符

    • "-a"表示与(and)
    • ”-o”表示或(or)
  • 例:

    find /boot -size +1024k -a -name “vmlinuz”(同时满足)

    find /boot -size +1024k -o -name “vmlinuz”(满足一个)

  • find的exec用法

    • -exec参数后面跟的是Linux命令,它是以分号“;”为结束标志,由于各个系统中分号会有不同的意义,因此在分号前面加上反斜杠转义符“”。

      代表前面find查找出来的文件名。

    • 例:find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用 ls -l命令将它们列出

      find ./ -type f -exec ls -l {} ;

命令执行的优先级
  • 第一优先级:指定路径的命令。绝对路径/usr/bin/ls或者相对路径cd /usr/bin ./ls

  • 第二优先级:别名指定的命令alias myls=’ /usr/bin/ls -alh"

  • 第三优先级:内部命令

  • 第四优先级:hash命令

    linux系统下会有一个hash表,当你刚开机时这个hash表为空,每当你执行过一条命令时,hash表会记录下这条命令的路径,就相当于缓存一样。第一次执行命令shell解释器默认的会从PATH路径下寻找该命令的路径,当你第二次使用该命令时,shell解释器首先会查看hash表,没有该命令才会去PATH路径下寻找。hash表能提高命令的调用速率。

  • 第五优先级:通过PATH定义的查找顺序查找

  • 如果以上顺序都找不到,就会报"未找到命令…"的错误。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/450571.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号