美文网首页
linux学习----Linux文件与目录管理

linux学习----Linux文件与目录管理

作者: noexceptionsir | 来源:发表于2017-06-27 13:32 被阅读0次

    目录与路径

    绝对路径:路径的写法一定要从根目录/写起。
    相对路径:不是由根目录/写起。

    . 代表此层目录
    .. 代表上一层目录

    • 代表前一个工作目录
      ~ 代表"目前用户身份"所在的文件夹
      ~ account代表account这个用户的主文件夹

    那么,在根目录下,有没有..目录存在?
    ".."与根目录自己"."是同一个目录。

    cd: 切换目录
    pwd:显示当前目录
    mkdir:新建一个新的目录
    rmdir:删除一个空的目录

    pwd -P:显示出当前路径,而非使用link路径
    mkdir -P:可以创建多层目录
    rm -p:[目录名称] 连同上层的空的目录一起删除
    rm -r :连同目录中的文件一起删除

    ls -a:全部文件,连同隐藏文件一起列出来
    ls -A:列出全部文件,不包括.与..
    ls -d:仅列出目录本身,而不是列出目录内的文件数据
    ls -l:列出长数据串,包含文件的属性与权限等数据

    cp -i:若文件已存在,则操作时会先询问操作的进行
    cp -r:递归持续复制,用于目录的复制
    cp -p:连同文件的属性一起复制过去,而非使用默认行为(备份常用)

    rm -f:忽略不存在的文件,不会出现警告信息
    rm -i:互动模式,删除前会询问用户是否操作
    rm -r:递归删除,常用在目录删除

    支持通配符

    将bashsrc开头的文件全部删除

    在root环境下,递归删除时,会不断的跳出提示询问是否删除,如果不想看到这些询问,可以在rm前面加上/

    当一个文件是" - "开头时,会出现无法删除的情况,我们可以在文件前加入" ./ "

    mv -f:强制执行,如果目标文件存在,不会询问而直接覆盖
    mv -i:若目标文件存在,就会询问是否覆盖
    mv -u:若目标文件存在,且source比较新,才会更新。

    如何移动文件到一个文件夹中?

    将a文件移动到b文件夹中

    如何修改当前文件名字?

    修改名字为c的文件c1

    如何移动多个文件?

    将当前目录中的c1、d文件放入b目录之中

    basename:取得最后的文件名
    dirname:取得完整的目录名字

    文件内容查阅

    cat:讲一个文件的内容连续显示在屏幕上
    cat -b:列出行号,不包括空白行
    cat -E:将结尾度断行字符$显示出来
    cat -n:打印出行号,连同空白行也会有行号
    cat -T:将Tab键以^I显示出来
    cat -v:列出一些看不出来的特殊字符
    cat -A:相当于 -vET的整合参数

    tac:反向输出
    nl:添加行号打印

    more:一页一页的翻动

    more示例

    (空格键):向下翻一页
    Enter键:向下翻一行
    /字符串:向下搜索该字符串
    :f:立即显示出文件名以及当前行数
    q:离开more,不再显示该文件内容
    b:往回翻页,只对文件有用,对管道没有用处

    less:一页一页翻动
    (空格键):向下翻一页
    [ PageDown ]:向下翻动一页
    [ PageUp ]:向上翻动一页
    /字符串:向下查询字符串
    ?字符串:向上查询字符串
    n:重复前一个查询
    N:反向重复上一个查询
    q:离开less

    head(取出前面几行)

    取出前面几行(默认10行) 取出前20行

    如何-n后面接的是负数,代表列出前面所有行数,但不包括后面100行。

    tail(取出后面几行)
    -n:后面接数字,表示后面几行
    -f:表示持续监测后面所接的文件名,摁下ctrl+C才能停止

    od(查看非纯文本文件)

    查看非纯文本文件

    modification time (mtime):当文件的内容数据更改时,就会更新这个时间,内容数据指的是文件的内容,而不是文件的属性。
    status time(ctime):当文件的状态改变时,就会更新这个时间。
    access time(atime):当改文件的内容被取用时,就会更新这个时间。

    文件的目录的默认权限与隐藏权限

    umask(新建文件的目录权限):umask的分数指的是该默认值要减掉的权限。
    如何修改umask的值?

    修改umask的值

    chattr(设置文件的隐藏属性)
    +:增加某一个参数
    -:删除某一个参数
    =:仅有后面接的参数
    a:设置a之后,这个文件只能增加数据,不能删除,也不能修改。
    i:让一个文件不能被删除,改名,设置连接,无法写入添加,只有root才能设置这个值。

    file:查看文件类型

    which:寻找执行文件,默认是找到第一个,加上-a参数就是输出全部找到的结果。

    whereis -b:只找二进制的文件
    whereis -m:只找在说明文件manual路径下的文件
    whereis -s:只找source源文件
    whereis -u:查找不在上述三个选项中的其他特殊文件

    locate [ 关键词 ]:后面加上部分关键词,就可以完成搜索。
    因为locate寻找的数据是由已创建的数据库/var/lib/mlocate里面的数据所查找到的,不用去硬盘中查找数据,这也就是find的速度慢的原因。

    但是数据库是每天更新一次的,如果刚刚创建一个文件,那么需要手动更新。updatedb命令进行手动更新数据库。

    相关文章

      网友评论

          本文标题:linux学习----Linux文件与目录管理

          本文链接:https://www.haomeiwen.com/subject/ennkfxtx.html