• 一.档案与目录管理


    1.档案属性

    2.chmod数字的表示方式

    3.档案属性说明

    1)、在linux里面,任何档案都具有三个权限
    User,Group,Others

    2)、以root身份登入linux后ls -al 查看档案

    3)、档案属性:10个属性
    如果档名之前有一个. 则代表这个档案为“隐藏档”,用ls -al可以连隐藏档都列出来
    如果只输入ls ,则档名有加.的档案就不会被显示出来

    4)、改变档案的权限
    chgrp:改变档案所属群组
    chown:改变档案所属人
    chmod:改变档案的属性、SUID、等等的特性
    示例:
    ①改变档案群组 chgrp -r users install.log
    注:-r:进行递归(recursive)的持续变更,即连同次目录下的所有档案、目录都更新成为这个群组之意

    ②改变档案拥有者 chown -r bin install.log
    注:chown -r 帐号名称 档案或目录

    ③改变档案的拥有者与群组 chown -r root:root install.log
    注:chown -r 帐号名称:群组名称 档案或目录

    ④改变九个属性 chmod 777 .bashrc
    r-4
    w-2
    x-1

    5)、绝对路径和相对路径
    您目前在/home这个目录下,如果想要进入/var/log这个目录时
    ①cd /var/log 绝对路径
    ②cd ../var/log 相对路径

    .:代表当前目录,也可以使用./
    ..:代表上一层目录,也可以../来代表

    4.档案与目录管理

    注:连结档即快捷方式

    1)、特殊目录
    . 代表此层目录
    .. 代表上一层目录
    - 代表前一个工作目录
    ~ 代表目前使用者身份所在的家目录
    ~account 代表account这个使用者的家目录

    2)、常见的处理目录指令
    cd 变换目录
    pwd 显示目前的目录
    mkdir 建立一个新的目录
    rmdir 删除一个空的目录

    3)、示例
    ①pwd
    cd /var/mail
    pwd --->/var/mail
    pwd -P --->/var/spool/mail
    ls -l /var/mail
    --->因为/var/mail是连接档,连结到/var/spool/mail,所以加上pwd -P的参数后,会不以连结文件的数据显示
    而是显示正确的完整的路径

    ②mkdir
    mkdir -[mp]
    -m:设定档案的权限
    -p:帮助你直接将所需要的目录递归建立起来
    mkdir -p /home/bird/testing/test1
    mkdir -m 711 test1

    ③rmdir
    rmdir -p test1/test2/test3/test4
    --->一次性删除所有空目录

    4)、添加PATH路径
    ①PATH="$PATH":/root---->$表示后面接的是变量
    ②./ls--->设定是在同一个目录中
    ③ll--->等价于ls -l

    5)、档案的常见操作
    cp rm mv

    6)、示例
    ①cp source destination
    Ⅰ将家目录下的.bashrc复制到/tmp下并更名为bashrc
    cd /tmp
    cp ~/.bashrc bashrc-->>创建了指定目录bashrc
    cp -i ~/.bashrc bashrc-->>加上-i参数,会在覆盖前询问是否确定
    cp -f ~/.bashrc bashrc-->>加上-f参数,强制直接覆盖

    Ⅱ在不加任何参数的情况下,档案的所属者会改变,连权限也跟着改变了
    cp -a /var/log/wtmp wtmp_2-->>加上-a参数,整个资料完全一模一样

    Ⅲ目录不能直接复制
    cp -r /etc/ /tmp-->>档案与目录的权限会被改
    cp -a /etc/ /tmp

    Ⅳ建立一个连接档
    cp -s bashrc bashrc_slink-->>复制成为符号连结文件,亦即快捷方式档案
    cp -l bashrc bashrc_hlink-->>硬式连结的连结档建立,而非使用预设属性

    Ⅴ目标档案与来源档案有差异时才会复制
    cp -u ~/.bashrc /tmp/bashrc-->>比较常被用于“备份”的工作当中

    Ⅵ一次性将多个数据复制到同一目录去
    cp ~/.bashrc ~/.bash_hisroty /tmp

    由于cp有种种档案属性与权限特性,所以在复制时必须清楚的了解到:
    ·是否需要完整的保留来源档案的信息
    ·来源档案是否为连接档
    ·来源档是否为特殊档案
    ·来源文件是否为目录

    ②rm -[fir] 档案或目录
    -f force 强制移除
    -i interact 互动模式,删除前询问
    -r recursion 递归删除

    Ⅰrm -i bashrc
    Ⅱ删除一个非空目录:
    rmdir test -->>删除不掉非空目录
    rm -rf test -->>这样可以强制删除
    Ⅲ删除一个带有-开头的档案
    rm ./-aaa- -->>因为-是参数,不可直接删除

    ③mv -[fiu] source destination
    -u update 更新
    Ⅰmv bashrc mvtest
    Ⅱmv mvtest mvtest2-->>更名
    Ⅲmv bashrc1 bashrc2 mvtest2-->>将所有数据移动到该目录

    ④如何判别档案名和目录名:可以用 / 来分辨
    Ⅰbasename /etc/sysconfig/network -->>network
    -->>取得最后的档案名
    Ⅱdirname /etc/sysconfig/network-->>/etc/sysconfig
    -->>取得的目录名

    ⑤直接检视档案内容
    cat:由第一行开始显示档案内容
    tac:从最后一行开始显示
    nl:显示的时候顺道输出行号

    ⑥示例
    Ⅰ打印出行号
    cat -n /etc/issue
    cat -A /etc/xinetd.conf-->>-A会将[tab]按I显示,断行符以$显示

    Ⅱnl -b a /etc/issue-->>-b a 无论是否为空行,都列出行号

    ⑦翻页查看文档的指令
    more /etc/man.config
    ·空格键space-->>向下翻一页
    ·Enter-->>向下翻一行
    ·:f-->>立刻显示文件名及目前显示的行数
    ·q-->>代表立刻离开more,不再显示该档案内容
    ·/-->>向下搜索关键字

    ⑧less
    ·pagedown、空格键-->>向下翻动一页
    ·pageup-->>向上翻动一页
    ·?-->>向上搜索
    ·n-->>重复前一个搜索(反向重复前一个搜索)

    ⑨head /etc/man.config-->>预设的情况中显示前面十行
    head -n 20 /etc/man.config-->>显示前20行
    tail /etc/man.config-->>预设只显示后面10行

    ⑩linux底下三个主要的时间变动:
    ·modification time(mtime):档案的“内容数据”变更时,就会更新这个时间
    ·status time(ctime):权限与属性被改了,就会更新这个时间
    ·access time(atime):档案的内容被取用时,就会读取这个时间,例如用cat读取档案,就会更新atime了
    Ⅰ新建一个空档案
    cd /tmp
    touch testtouch-->>新建空的档案
    Ⅱ检查档案日期
    ll bashrc;ll --time=atime;ll --time=ctime bashrc
    -->>第一条:mtime
    -->>第二条:atime
    -->>第三条:ctime
    Ⅲ修改atime和mtime时间
    touch -d "2 days ago" bashrc-->>ctime 没变

    Ⅳ修改具体时间为2005/07/15 2:02
    touch -t 0507150202 bashrc

    11)、umask 002
    touch test3
    mkdir test4
    ll-->>umask的作用

    12)、设定档案的隐藏属性chattr
    chattr +i attrtest-->>新增属性i,i可以让一个档案不能被删除,改名,设定连结也无法写入或新增资料
    chattr -i attrtest-->>删除属性i

    13)、lsattr-->>显示档案隐藏属性

    14)、更新数据库档案的方法:/usr/bin/updatedb

  • 相关阅读:
    UVA1585
    暑期第二场-1
    UVA11582
    UVA10006
    HDU1005
    HDU2035
    POJ:2492-Bug's Life(二分图的判定)
    Codeforces:68A-Irrational problem(暴力大法好)
    Codeforces Round #456 (Div. 2) B. New Year's Eve
    Codeforces Round #456 (Div. 2) A. Tricky Alchemy
  • 原文地址:https://www.cnblogs.com/chenshaoping/p/8568926.html
Copyright © 2020-2023  润新知