linux管理文件的方法

linux管理文件的方法

  • Linux的目錄結構為樹狀結構,最頂級的目錄為根目錄/。其他目錄通過掛載可以將它們添加到樹中,通過解除掛載可以移除它們
  • 有且衹有一個/
  • 依靠路徑區分文件
  • 既能使用網絡分區也能使用本地分區
  • 一個約定:FHS
   /:根目錄
   /usr:主要放軟件執行有關的東西
   /var:放一些和運行有關的
   
   /etc:配置文件
   /bin:可執行文件
   /dev:設備文件
   /lib:執行文件需要的庫函數與核心所需要的模塊
   /

文件基本屬性

  • 當為[ d ]則是目錄
  • 當為[ - ]則是文件;
  • 若是[ l ]則表示為鏈接文檔(link file);
  • 若是[ b ]則表示為裝置文件裡面的可供儲存的接口設備(可隨機存取裝置);
  • 若是[ c ]則表示為裝置文件裡面的串行端口設備,例如鍵盤、鼠標(一次性讀取裝置)。
  • rwx分別代表讀權限,寫權限,執行權限

操作文件常用命令

  1. chgrp:更改文件屬組
    chgrp [-R] 屬組名 文件名
  1. chown: 更改文件屬主,可同時更改文件屬組
    chown [-R] 屬主名 文件名
    chown [-R] 屬主名: 數組名 文件名
  1. chomd: 更改文件的9個屬性
    1. 使用數字
    chmod [-R] syz 文件或者文件夾
    xyz分別爲屬主,屬組,其他用戶的權和
    r:4 w:2 x:1 -:0
    
    1. 使用符號
    chmod u/g/o/a +/-/= rwx
        u:user,屬主
        g:group,屬組
        o:others,其他
        a:all,全部
        +:添加權限
        -:除去
        =:設定
        r:寫權限
        w:讀權限
        x:執行權限
    例: 将文件权限设置为 -rwxr-xr-- ,可以使用 chmod u=rwx,g=rx,o=r 文件名
    

文件與目錄管理

  • ls: 列出目錄
    常用參數:
        -a: 顯示全部文件,包含隱藏文件
        -l: 顯示文件及其屬性與權限等信息
        -d: 僅列出目錄本身,而不是列出目錄内的文件數據
    
  • cd: 切換目錄
  • pwd: 顯示當前目錄
    -P參數可以顯示出確切的路徑而非使用連接路徑
    
  • mkdir: 創建目錄
    -m: 配置文件權限,可以直接配置,不需要看默認權限umask的臉色,如 mldor -m 770 test
    -p: 遞歸創建需要的目錄,包含上一級目錄
    
  • rmdir: 刪除空目錄
    -p:連同上級(空的)目錄一起刪除
    
  • cp: 複製文件或者目錄
    -a: 等價于-pdr
    -d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
    -f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
    -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
    -l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
    -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
    -r:递归持续复制,用於目录的复制行为;(常用)
    -s:复制成为符号连结档 (symbolic link),亦即『捷径』文件;
    -u:若 destination 比 source 旧才升级 destination !
    
  • rm: 移除文件或者目錄
    -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
    -i :互动模式,在删除前会询问使用者是否动作
    -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
    
  • mv: 移動文件或目錄,或者修改文件與目錄名稱
    -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
    -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
    -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
    

文件内容查看

  • cat 由第一行开始显示文件内容
    -A :相当於 -vET 的整合选项,可列出一些特殊字符而不是空白而已;
    -b :列出行号,仅针对非空白行做行号显示,空白行不标行号!
    -E :将结尾的断行字节 $ 显示出来;
    -n :列印出行号,连同空白行也会有行号,与 -b 的选项不同;
    -T :将 [tab] 按键以 ^I 显示出来;
    -v :列出一些看不出来的特殊字符
    
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒著写!
  • nl 显示的时候,顺道输出行号!
    -b    :指定行号指定的方式,主要有两种:
    -b a  :表示不论是否为空行,也同样列出行号(类似 cat -n);
    -b t  :如果有空行,空的那一行不要列出行号(默认值);
    -n    :列出行号表示的方法,主要有三种:
    -n ln :行号在荧幕的最左方显示;
    -n rn :行号在自己栏位的最右方显示,且不加 0 ;
    -n rz :行号在自己栏位的最右方显示,且加 0 ;
    -w    :行号栏位的占用的位数。
    
  • more 一页一页的显示文件内容
    空白键 (space):代表向下翻一页;
    Enter         :代表向下翻『一行』;
    /字串         :代表在这个显示的内容当中,向下搜寻『字串』这个关键字;
    :f            :立刻显示出档名以及目前显示的行数;
    q             :代表立刻离开 more ,不再显示该文件内容。
    b 或 [ctrl]-b :代表往回翻页,不过这动作只对文件有用,对管线无用。
    
  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
    空白键    :向下翻动一页;
    [pagedown]:向下翻动一页;
    [pageup]  :向上翻动一页;
    /字串     :向下搜寻『字串』的功能;
    ?字串     :向上搜寻『字串』的功能;
    n         :重复前一个搜寻 (与 / 或 ? 有关!)
    N         :反向的重复前一个搜寻 (与 / 或 ? 有关!)
    q         :离开 less 这个程序;
    
  • head 只看头几行
  • tail 只看尾巴几行
原文地址:https://www.cnblogs.com/ltozvxe/p/11531065.html