linux档案与目录管理

309 阅读2分钟

鸟哥的私房菜

目录与路径

  • . : 代表此层目录
  • ..: 代表上一层目录
  • -: 代表前一个工作目录
  • ~: 代表【目前使用者身份】所在的家目录
  • ~account:代表 account 這個使用者的家目錄(account是個帳號名稱)

处理目录的指令:

  • cd: 切换目录
  • pwd: 显示当前的目录
  • mkdir: 建立一个新的目录
    • [-p] 如果要一次创建多个层级目录,可以使用该命令
      • 假设现在在/test文件夹下,如果直接mkdir /test/t-1/t-2会报错,因为t-1事先不存在,使用mkdir -p /test/t-1/t-2会自动建立t-1
  • rmdir: 删除一个空的目录
    • 如果要删除的目录下存在内容,则无法删除
    • [-p] 会连同上层空的目录一起删除
  • cp:复制
    • 在复制文件或者目录过程中,其权限或者属性可能会发生变化,加上-a参数,可以保证所有特性都一样
    • -i :若目標檔(destination)已經存在時,在覆蓋時會先詢問動作的進行(常用)
    • -p :連同檔案的屬性(權限、用戶、時間)一起複製過去,而非使用預設屬性(備份常用);
    • -r :遞迴持續複製,用於目錄的複製行為;(常用)
  • rm:移除档案或目录
  • mv:移动档案与目录,或更名
    • mv test.txt test-1.txt 将test.txt更换名字为test-1.txt
  • cat:由第一行开始显示档案内容
  • tac:由最后一行开始显示
  • nl:显示内容时,显示行号
  • more:一页一页输出内容
  • less: 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
  • head: 只看頭幾行
    • -n:head -n 20 test.txt 表示取头20行
  • tail: 只看尾巴幾行
    • -n: tail -n 20 test.txt 表示取倒数20行
  • od: 以二進位的方式讀取檔案內容!

新建档案或者修改档案时间

  • touch:新建档案或者修改档案时间

档案预设权限

umask

预设值

  • 若使用者建立档案,那么档案的预设值最大为666分,默认没有执行权限
  • 若使用者建立目录,那么目录的预设值最大为777分,默认所有权限都开放

设置方式umask + 分数,分数表示为预设值需要减掉的权限;(當要拿掉能寫的權限,就是輸入 2 分)

指令與檔案的搜尋

  • which:寻找执行档
  • whereis:由一些特定目录中搜索档案档名
  • locate: 依據 /var/lib/mlocate 內的資料庫記載,找出使用者輸入的關鍵字檔名(mlocate每天只会更新一次)

  • updatedb:根據 /etc/updatedb.conf 的設定去搜尋系統硬碟內的檔名,並更新 /var/lib/mlocate 內的資料庫檔案
  • find