• 技术文章 >运维 >linux运维

    有关Linux文件管理的相关命令教程

    巴扎黑巴扎黑2017-08-02 16:03:27原创719
    在了解了Linux文件管理背景知识之后, 我们可以学习一些命令来管理我们的文件。

    文件操作相关

    有一些命令可以帮助我们"修剪"之前看到的文件树。

    $touch a.txt

    如果a.txt不存在,生成一个新的空文档a.txt。如果a.txt存在,那么只更改该文档的时间信息。(这个命令实际上用得并不广泛,但可以帮我们创建一个空文件来实验下面操作)

    $ls .

    是list的简写,列出当前目录下的所有文件名

    $ls -l a.txt

    列出文件的详细信息

    $cp a.txt b.txt

    cp是copy的简写,用来复制文件。在工作目录下,将a.txt复制到文件b.txt

    $cp a.txt ..

    将a.txt复制到父目录的a.txt

    $mv a.txt c.txt

    mv是move的简写,用来移动文件。将a.txt移动成为c.txt (相当于重命名rename)

    $mv c.txt /home/vamei

    将c.txt移动到/home/vamei目录

    $rm a.txt

    rm是remove的缩写,用于删除文件。删除a.txt

    $rm -r /home/vamei

    删除从/home/vamei向下的整个子文件系统。-r表示recursive, 是指重复删除的操作,/home/vamei文件夹为空,然后删除/home/vamei文件夹本身。

    (程序员总是对这个命令很感兴趣, $rm -rf / 它会删除整个文件树。f的目的是告诉rm放心干,不用再确认了…… 一般情况下,应该没有人会用这个命令。)

    $mkdir /home/vamei/good

    创建一个新的目录

    $rmdir /home/vamei/good

    删除一个空的目录

    文件权限相关

    $chmod 755 a.txt

    (你必须是文件a.txt的拥有者才能运行此命令。或者以$sudo chmod 755 a.txt的方式,以超级用户的身份运行该命令。)

    change mode 改变a.txt的读、写以及执行权限。还记得每个文件都有九位的读写执行权限(参看 Linux文件管理背景知识),分为三组,分别对应拥有者(owner),拥有组(owner group)中的用户和所有其他用户(other)。在这里,我们也有三个数字,755,对应三个组。7被分配给拥有者,5被分配给拥有组,最后一个5分配给其它用户。Linux规定: 4为有读取的权利,2为有写入的权利,1为有执行的权利。我们看到的7实际上是4 + 2 + 1,表示拥有者有读、写、执行三项权利。(想想5 意味着什么)

    这时,运行$ls -l a.txt, 你应该看到九位的权限变成了rwxr-xr-x。根据自己的需要,你可以用比如444, 744代替755,来让文件有不同的权限。

    $sudo chown root a.txt

    change owner 改变文件的拥有者为root用户。这个命令需要有超级用户权限才能执行,所以我们在命令之前加上sudo。

    $sudo chgrp root a.txt

    change group 改变文件的拥有组为root组

    Linux文件名通配表达式

    (wild card, 也叫filename pattern matching)

    之前所讲的命令,比如ls, mv, cp都可以接收多个参数,比如:

    $ls -l a.txt b.txt c.txt

    就可以列出这三个文件的所有信息。

    有时候,我们想列出工作目录下所有的以.txt结尾的文件的信息,可以用下面的方式:

    $ls -l *.txt

    *.txt的写法就运用了Linux通配表达式。它与正则表达式相类似,但语法有所不同。

    Filename Pattern Matching 对应含义

    * 任意多个任意字符

    ? 任意一个字符

    [kl] 字符k或者字符l

    [0-4] 数字0到4字符中的一个

    [b-e] b到e字符中的一个

    [^mnp] 一个字符,这个字符不是m,n,p

    Linux会找到符合表达式的文件名,然后用这些文件名作为参数传递给命令。注意,当使用rm的时候,要格外小心。下面两个命令,只相差一个空格,但效果大为不同:

    $rm * .txt

    $rm *.txt

    第一个命令会删除当前目录下所有文件!

    总结

    touch, ls, mv, cp, rm, mkdir, rmdir

    chmod, chown, chgrp

    wild card

    以上就是有关Linux文件管理的相关命令教程的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:Linux 相关 管理
    上一篇:教你如何在linux系统系复制和移动文件夹 下一篇:Linux下有关磁盘管理的常用命令
    线上培训班

    相关文章推荐

    • 一文讲解Linux服务器如何部署apache和php• 唠唠到底是什么阻碍了Linux桌面的发展?• 一文讲解windows怎么连接Linux桌面?• 四步搞定Linux git命令免输密码的设置• 阿里云主机linux系统分区格式化和挂载数据盘

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网