Linux C/C++編程之(二)常用命令之目錄處理命令

一、Linux命令的普遍語法格式

  • Linux命令格式(可修改):
命令 -選項 參數
  • 例子:
ls -la /etc

在這裏插入圖片描述

二、顯示目錄文件命令:ls

  • 英文原意:list
  • 命令所在路徑:/bin/ls
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:顯示目錄文件
  • 語法:
    • -a 顯示所有文件,包括隱藏文件
      在這裏插入圖片描述
    • -l 詳細信息顯示,包括文件的屬性和權限等數據
      在這裏插入圖片描述
    • -d 僅顯示目錄名,而不顯示目錄下的內容列表
      在這裏插入圖片描述
    • -h人性化顯示(hommization)
      在這裏插入圖片描述
    • -t 用文件和目錄的更改時間排序;可以用第一個顯示的文件判斷最近修改的文件
      在這裏插入圖片描述
    • -r 按字母逆序或最早優先的順序顯示輸出結果
      在這裏插入圖片描述
    • -R 連同子目錄一同顯示出來,也就所說該目錄下所有文件都會顯示出來(顯示隱藏文件要加-a參數)
      在這裏插入圖片描述

注意:.開頭的文件除非是目錄,否則就是隱藏文件

最常用也是最好用的一個命令就是:

ls -lrt

在這裏插入圖片描述
以其中一條信息爲例子,解析每個字段都是什麼。

drwxrwxr-x 2 gxl gxl 4096 6月  26 12:01 linux

在這裏插入圖片描述

  • 第一位 d 表示文件類型,-表示是二進制文件,d表示目錄,l表示軟連接文件。
  • 後面的九位,每三個爲一組:rwxrwxr-x
    • u(user)所有者,g(group)所屬組,o(other)其他人
    • r 讀,w 寫,x 執行,- 無權限
      在這裏插入圖片描述
  • 2 是引用計數,表示文件被引用過多少次
  • gxl 表示所有者,一般創建一個文件,所有者默認是創建者
  • gxl 表示所屬組
  • 4096 表示文件字節大小,不帶單位表示字節
  • 6月 26 12:01 表示文件的最後修改時間。

注意;Linux沒有明確的創建時間,只有最後一次訪問時間、文件的狀態修改時間、文件的數據修改時間

  • linux 表示文件名

三、切換目錄命令:cd

  • 英文原意:change directory
  • 命令所在路徑:shell 內置命令
    在這裏插入圖片描述

shell內置命令和外部命令的區別

  • 內部命令是shell程序的一部分,其中包含的是一些比較簡單的linux系統命令,這些命令由shell 程序識別並在shell 程序內部完成運行,通常在linux系統加載運行時shell 就被加載並駐留在系統內存中。
  • 外部命令是linux系統中的實用程序部分,因爲實用程序的功能通常都比較強大,所以其包含的程序量也會很大,在系統加載時並不隨系統一起被加載到內存中,而是在需要時纔將其調用內存。
  • 內部命令和外部命令最大的區別之處就是 性能。內部命令由於構建在shell中而不必創建多餘的進程,要比外部命令執行快得多,因此和執行更大的腳本是一個道理,執行包含很多外部命令的腳本會損害腳本的性能。
    • 內部命令是由Bash自身提供的命令,其執行速度比外部命令快,因爲解析內部命令shell不需要創建子進程。比如:cd,echo等。
    • 外部命令是在bash之外額外安裝的,通常放在/bin,/usr/bin,/sbin,/usr/sbin……….等等。比如:ls、vi等。
  • 執行權限:所有用戶
  • 功能描述:切換目錄
  • 語法:
    • cd 目錄名
    • 回到上一級目錄:cd ..
    • 還是在當前目錄:cd .
    • 返回上兩級目錄:cd ../..
    • 返回進入此目錄之前所在的目錄:cd -
      在這裏插入圖片描述

四、創建目錄命令:mkdir

  • 英文原意:make directories
  • 命令所在路徑:/bin/mkdir
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:創建新目錄
  • 語法:
    • mkdir -p 目錄名(-p遞歸創建)

例子:

  • 創建單個目錄:
mkdir -p ./txt/a.txt
  • 創建多個目錄:
mkdir -p ./txt/a.txt /tmp/b.txt

在這裏插入圖片描述
注意:

  1. 創建的目錄如果已經存在,那麼Linux會提示無法創建。
    在這裏插入圖片描述
  2. 不帶任何參數地運行mkdir命令,會在當前目錄下創建目錄。
    在這裏插入圖片描述
  3. 加上-p,前面的目錄沒有的會依次創建;不加-p,需要權限。
    在這裏插入圖片描述

五、刪除空目錄命令:mkdir

  • 英文原意:remove empty directories
  • 命令所在路徑:/bin/rmdir
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:刪除空目錄(如果目錄下存在文件,不能刪除)
  • 語法:
    • rmdir 空目錄名

例子:刪除指定目錄
在這裏插入圖片描述
在這裏插入圖片描述

六、刪除文件或目錄命令:rm

  • 英文原意:remove
  • 命令所在路徑:/bin/rm
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:刪除文件
  • 語法:
    • rm -rf 文件名或目錄名

例子:

  • 在 test2 目錄下有一個目錄 test 和一個文件 test.c,
    • rm -rf test2 是強制刪除,不需要輸入 y 來確認,容易誤刪文件。
      在這裏插入圖片描述
  • rm -rf a1.txt a2.txt 同時刪除兩個文件
    在這裏插入圖片描述
  • rm -ir test2 交互式刪除文件
    在這裏插入圖片描述

七、顯示當前目錄命令:pwd

  • 英文原意:print working directory
  • 命令所在路徑:/bin/pwd
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:顯示當前目錄
  • 語法:
    • pwd

例子:

  • 顯示當前目錄:pwd
    在這裏插入圖片描述

八、複製文件或目錄命令:cp

  • 英文原意:copy
  • 命令所在路徑:/bin/cp
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:複製文件或目錄
  • 語法:
    • cp -rp 原文件或目錄 目標目錄
    • -r 複製目錄
    • -p 保留文件屬性

例子:

  • 將目錄下的a.txt文件複製,同樣可以用於複製後文件改名
    在這裏插入圖片描述
  • 加-p屬性,會將原文件的一些屬性比如修改時間等也原封不動的複製過去。如果不加-p屬性,那麼複製後的文件修改時間爲當前系統時間。
    在這裏插入圖片描述

九、剪切文件或目錄命令:mv

  • 英文原意:move
  • 命令所在路徑:/bin/mv
    在這裏插入圖片描述
  • 執行權限:所有用戶
  • 功能描述:剪切文件、改名
  • 語法:
    • mv 原文件或目錄 目標目錄

例子:

  • 在當前目錄下將c.txt剪切到上一目錄下
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章