zoukankan      html  css  js  c++  java
  • Linux 文件与目录管理

    一、目录与路径(PATH)

          1. 绝对路径:绝对路径的正确度比较好。

          2. 相对路径:比较方便,cd ../man。

          3. 执行文件路径的变量($PATH):

              (1)不同身份用户默认的PATH不同,默认能够随意执行的命令也不同。

              (2)PATH 是可以修改的,所以一般用户还是可以通过修改 PATH 来执行某些位于 /sbin 或 /usr/sbin 下的命令来查询。

              (3)使用绝对路径或相对路径直接指定某个命令的文件名来执行,会比查询 PATH 来得正确。

              (4)本目录(.)最好不要放到 PATH 当中。

    二、 文件与目录管理

          1. 查看文件与目录:ls

              将主文件夹下的所有文件列出来(含属性与隐藏文件):ls -al ~

              完整呈现文件的修改时间:ls -al --full-time ~

          2. 复制、删除与移动:cp,rm,mv

              (1)切换到/tmp,并将/var/log/wtmp复制到/tmp且查看属性:  

                        cd /tmp

                        cp /var/log/wtmp . 

                        ls -l /var/log/wtmp wtmp

             (2) 复制 /etc/ 这个目录下的所有内容到 /tmp

                        cp /etc/ /tmp

                        cp -r /etc/ /tmp   —— -r 可以复制目录,但是文件与目录的权限可能会被改变。

             (3)  删除 bashrc 文件

                        rm -i bashrc      —— -i 互动模式,在删除前询问用户是否操作

             (4)  将 /tmp 下面开头为 bashrc 的文件名全部删除

                        rm -i bashrc*

             (5)  将 /tmp/etc/ 这个目录删除掉

                        rm -r /tmp/etc     —— -r  递归删除。

             (6)  复制一个文件,创建一个目录,将文件移动到目录中

                        cd /tmp

                        cp ~/.bashrc bashrc

                        mkdir mvtest

                        mv bashrc mvtest

    三、文件内容查阅

            1.  查看文件内容:cat,tac,nl

                  cat -n /etc/issue          —— -n 打印出行号

                  nl -b a /etc/issue         —— nl(添加行号打印); -b a(不论是否为空行,同样列出行号)

            2.  可翻页查看:more,less

            3.  数据选取:head,tail

                   (1) 显示前20行: head -n 20 /etc/man.config

                   (2) 后面100行的数据都不打印,只打印前面几行:   head -n -100 /etc/man.config

                   (3) 显示最后20行:tail -n 20 /etc/man.config

                   (4) 列出100行以后的数据: tail -n +100 /etc/man.config

             4. 非纯文本文件:od

                    请将 /usr/bin/passwd 的内容使用 ASCII 方式来输出: od -t c /usr/bin/passwd       —— c 使用ASCII

             5. 修改文件时间或创建新文件:touch

                     mtime(内容数据更改),ctime(时间状态),atime(该文件的内容被取用)

                     (1)新建一个空的文件并查看时间:
                             cd /tmp

                             touch testtouch

                             ls -l testtouch

                     (2)将~/.bashrc 复制成为 bashrc,假设复制完全的属性,检查其日期

                             cp -a ~/.bashrc bashrc

                             ls -l bashrc; ls -l --time=atime bashrc; ls -l --time=ctime bashrc

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

               1. 文件默认权限:umask 0022

                  (1)若用户创建文件,最大666

                  (2)若用户新建目录,777

                    umask 的分数指的是“该默认值需要减掉的权限”

               2. 文件隐藏属性 chattr,lsattr

                   (1)chattr(设置文件隐藏属性)

                           cd /tmp

                           touch attrtest

                           chattr +i attrtest             ——给予 i 的属性

                           rm attrtest                     ——无法删除

                           chattr -i attrtest             ——取消 i 的属性

                     (2)lsattr(显示文件隐藏属性)

                             chattr +aij attrtest

                             lsattr attrtest

                             显示结果:----ia---j--- attrtest

                  3. 文件特殊权限:SUID(4),SGID(2),SBIT(1)

                  4. 查看文件类型:file   —— 知道某个文件的基本数据

                         file /var/lib/mlocate/mlocate.db        ——这是 data 文件

    五、命令与文件的查询

             1. 脚本文件名的查询

                   which : 寻找执行文件

              2. 文件名的查找:wheweis,lacate,find

                    

                       

                         

             

  • 相关阅读:
    SQLite的SQL语法
    C/C++中各种类型int、long、double、char表示范围(最大最小值)
    君子性非异也,善假于物也
    简单工厂模式
    Linux下通配符总结
    Readprocessmemory使用方法
    C++ 清空消息队列
    一周自学动态站点设计
    iOS 8.0正式公布啦
    What is the difference between JRE,JVM and JDK?
  • 原文地址:https://www.cnblogs.com/jiangjh/p/2099620.html
Copyright © 2011-2022 走看看