Linux中一些常用的命令(一)

ls命令

ls命令:用來列出當前目錄的內容或指定目錄,是使用頻率較高的命令

  • -l:以長格式顯示目錄下的內容列表。輸出的信息從左到右依次包括文件名,文件類型、權限模式、硬連接數、所有者、組、文件大小和文件的最后修改時間等
  • -a:列出所有隱藏文件和目錄
  • -h:以人類可讀的方式將文件或者目錄大小顯示出來
  • -R:把當前目錄下的目錄的所有內容列出來(遞歸)
  • -d:顯示當前目錄的詳細信息,不顯示目錄下的內容
  • -A:列出所有隱藏文件和目錄 除了.和..
  • -1:文件和目錄名分行顯示
  • -S:把文件目錄按照大小從大到小來排列
  • -t:把文件和目錄按照最近修改時間排列 從最新到最老的順序排列
  • -u:配合-t選項,顯示并按atime從新到舊排序

cd命令

cd命令:用來切換工作目錄至dirname。 其中dirName表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home directory(也就是剛login時所在的目錄)。另外,~也表示為home directory的意思,.則是表示目前所在的目錄,..則表示目前目錄位置的上一層目錄。

  • -p:如果要切換到的目標目錄是一個符號連接,直接切換到符號連接指向的目標目錄
  • -L:如果要切換的目標目錄是一個符號的連接,直接切換到字符連接名代表的目錄,而非符號連接所指向的目標目錄
  • -:當僅實用”-“一個選項時,當前工作目錄將被切換到環境變量”OLDPWD”所表示的目錄。

echo命令

echo命令:用于在shell中打印shell變量的值,或者直接輸出指定的字符串。linux的echo命令,在shell編程中極為常用, 在終端下打印變量value的時候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在顯示器上顯示一段文字,一般起到一個提示的作用。

  • -e:激活轉義字符。
使用-e選項時,若字符串中出現以下字符,則特別加以處理,而不會將它當成一般文字輸出:
  • \a 發出警告聲;
  • \b 刪除前一個字符;
  • \c 最后不加上換行符號;
  • \f 換行但光標仍舊停留在原來的位置;
  • \n 換行且光標移至行首;
  • \r 光標移至行首,但不換行;
  • \t 插入tab;
  • \v 與\f相同;
  • \ 插入\字符;
  • \nnn 插入nnn(八進制)所代表的ASCII字符;

history命令

history命令用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區和將歷史命令緩沖區中的目錄寫入命令文件。

該命令單獨使用時,僅顯示歷史命令,在命令行中,可以使用符號!執行指定序號的歷史命令。例如,要執行第2個歷史命令,則輸入!2。

歷史命令是被保存在內存中的,當退出或者登錄shell時,會自動保存或讀取。在內存中,歷史命令僅能夠存儲1000條歷史命令,該數量是由環境變量HISTSIZE進行控制。

  • -c:清空當前歷史命令;
  • -a:將歷史命令緩沖區中命令寫入歷史命令文件中;
  • -r:將歷史命令文件中的命令讀入當前歷史命令緩沖區;
  • -w:將當前歷史命令緩沖區命令寫入歷史命令文件中。

date命令

date命令是顯示或設置系統時間與日期。

很多shell腳本里面需要打印不同格式的時間或日期,以及要根據時間和日期執行操作。延時通常用于腳本執行過程中提供一段等待的時間。日期可以以多種格式去打印,也可以使用命令設置固定的格式。在類UNIX系統中,日期被存儲為一個整數,其大小為自世界標準時間(UTC)1970年1月1日0時0分0秒起流逝的秒數。

  • -d<字符串>:顯示字符串所指的日期與時間。字符串前后必須加上雙引號;
  • -s<字符串>:根據字符串來設置日期與時間。字符串前后必須加上雙引號;
日期格式字符串列表
  • %H 小時,24小時制(00~23)
  • %I 小時,12小時制(01~12)
  • %k 小時,24小時制(0~23)
  • %l 小時,12小時制(1~12)
  • %M 分鐘(00~59)
  • %p 顯示出AM或PM
  • %r 顯示時間,12小時制(hh:mm:ss %p)
  • %s 從1970年1月1日00:00:00到目前經歷的秒數
  • %S 顯示秒(00~59)
  • %T 顯示時間,24小時制(hh:mm:ss)
  • %X 顯示時間的格式(%H:%M:%S)
  • %Z 顯示時區,日期域(CST)
  • %a 星期的簡稱(Sun~Sat)
  • %A 星期的全稱(Sunday~Saturday)
  • %h,%b 月的簡稱(Jan~Dec)
  • %B 月的全稱(January~December)
  • %c 日期和時間(Tue Nov 20 14:12:58 2012)
  • %d 一個月的第幾天(01~31)
  • %x,%D 日期(mm/dd/yy)
  • %j 一年的第幾天(001~366)
  • %m 月份(01~12)
  • %w 一個星期的第幾天(0代表星期天)
  • %W 一年的第幾個星期(00~53,星期一為第一天)
  • %y 年的最后兩個數字(1999則是99)

cal命令

cal命令用于顯示當前日歷,或者指定日期的日歷。

  • -l:顯示單月輸出;
  • -3:顯示臨近三個月的日歷;
  • -s:將星期日作為月的第一天;
  • -m:將星期一作為月的第一天;
  • -j:顯示“julian”日期;
  • -y:顯示當前年的日歷。

alias命令

alias命令用來設置指令的別名。我們可以使用該命令可以將一些較長的命令進行簡化。使用alias時,用戶必須使用單引號”將原來的命令引起來,防止特殊字符導致錯誤。


touch命令

touch命令有兩個功能:

  • 一是用于把已存在文件的時間標簽更新為系統當前的時間(默認方式),它們的數據將原封不動地保留下來;
  • 二是用來創建新的空文件。

cp命令

cp命令用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄。它可以將單個源文件復制成一個指定文件名的具體的文件或一個已經存在的目錄下。cp命令還支持同時復制多個文件,當一次復制多個文件時,目標文件參數必須是一個已經存在的目錄,否則將出現錯誤。

  • -a:此參數的效果和同時指定”-dpR”參數相同;
  • -d:當復制符號連接時,把目標文件或目錄也建立為符號連接,并指向與源文件或目錄連接的原始文件或目錄;
  • -f:強行復制文件或目錄,不論目標文件或目錄是否已存在;
  • -i:覆蓋既有文件之前先詢問用戶;
  • -l:對源文件建立硬連接,而非復制文件;
  • -p:保留源文件或目錄的屬性;
  • -R/r:遞歸處理,將指定目錄下的所有文件與子目錄一并處理;
  • -s:對源文件建立符號連接,而非復制文件;
  • -u:使用這項參數后只會在源文件的更改時間較目標文件更新時或是名稱相互對應的目標文件并不存在時,才復制文件;
  • -S:在備份文件時,用指定的后綴“SUFFIX”代替文件的默認后綴;
  • -b:覆蓋已存在的文件目標前將目標文件備份;
  • -v:詳細顯示命令執行的操作。

mv命令

mv命令用來對文件或目錄重新命名,或者將文件從一個目錄移到另一個目錄中。source表示源文件或目錄,target表示目標文件或目錄。如果將一個文件移到一個已經存在的目標文件中,則目標文件的內容將被覆蓋。

mv命令可以用來將源文件移至一個目標文件中,或將一組文件移至一個目標目錄中。源文件被移至目標文件有兩種不同的結果:

  • 1:如果目標文件是到某一目錄文件的路徑,源文件會被移到此目錄下,且文件名不變。
  • 2:如果目標文件不是目錄文件,則源文件名(只能有一個)會變為此目標文件名,并覆蓋己存在的同名文件。如果源文件和目標文件在同一個目錄下,mv的作用就是改文件名。當目標文件是目錄文件時,源文件或目錄參數可以有多個,則所有的源文件都會被移至目標文件中。所有移到該目錄下的文件都將保留以前的文件名。

注意事項:mv與cp的結果不同,mv好像文件“搬家”,文件個數并未增加。而cp對文件進行復制,文件個數增加了。

  • –backup=<備份模式>:若需覆蓋文件,則覆蓋前先行備份;
  • -b:當文件存在時,覆蓋前,為其創建一個備份;
  • -f:若目標文件或目錄與現有的文件或目錄重復,則直接覆蓋現有的文件或目錄;
  • -i:交互式操作,覆蓋前先行詢問用戶,如果源文件與目標文件或目標目錄中的文件同名,則詢問用戶是否覆蓋目標文件。用戶輸入”y”,表示將覆蓋目標文件;輸入”n”,表示取消對源文件的移動。這樣可以避免誤將文件覆蓋。
  • –strip-trailing-slashes:刪除源文件中的斜杠“/”; -S<后綴>:為備份文件指定后綴,而不使用默認的后綴;
  • –target-directory=<目錄>:指定源文件要移動到目標目錄;
  • -u:當源文件比目標文件新或者目標文件不存在時,才執行移動操作。

mkdir命令

mkdir命令用來創建目錄。該命令創建由dirname命名的目錄。如果在目錄名的前面沒有加任何路徑名,則在當前目錄下創建由dirname指定的目錄;如果給出了一個已經存在的路徑,將會在該目錄下創建一個指定的目錄。在創建目錄時,應保證新建的目錄與它所在目錄下的文件沒有重名。

注意:在創建文件時,不要把所有的文件都存放在主目錄中,可以創建子目錄,通過它們來更有效地組織文件。最好采用前后一致的命名方式來區分文件和目錄。例如,目錄名可以以大寫字母開頭,這樣,在目錄列表中目錄名就出現在前面。

在一個子目錄中應包含類型相似或用途相近的文件。例如,應建立一個子目錄,它包含所有的數據庫文件,另有一個子目錄應包含電子表格文件,還有一個子目錄應包含文字處理文檔,等等。目錄也是文件,它們和普通文件一樣遵循相同的命名規則,并且利用全路徑可以唯一地指定一個目錄。


file命令

file命令用來探測給定文件的類型。file命令對文件的檢查分為文件系統、魔法幻數檢查和語言檢查3個過程。

  • -b:列出辨識結果時,不顯示文件名稱;
  • -c:詳細顯示指令執行過程,便于排錯或分析程序執行的情形;
  • -f<名稱文件>:指定名稱文件,其內容有一個或多個文件名稱時,讓file依序辨識這些文件,格式為每列一個文件名稱;
  • -L:直接顯示符號連接所指向的文件類別;
  • -m<魔法數字文件>:指定魔法數字文件;
  • -v:顯示版本信息;
  • -z:嘗試去解讀壓縮文件的內容。

tr命令

tr命令可以對來自標準輸入的字符進行替換、壓縮和刪除。它可以將一組字符變成另一組字符,經常用來編寫優美的單行命令,作用很強大。

  • -c或——complerment:取代所有不屬于第一字符集的字符;
  • -d或——delete:刪除所有屬于第一字符集的字符;
  • -s或–squeeze-repeats:把連續重復的字符以單獨一個字符表示;
  • -t或–truncate-set1:先刪除第一字符集較第二字符集多出的字符。

useradd命令

useradd命令用于Linux中創建的新的系統用戶。useradd可用來建立用戶帳號。帳號建好之后,再用passwd設定帳號的密碼.而可用userdel刪除帳號。使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中。

  • -c<備注>:加上備注文字。備注文字會保存在passwd的備注欄位中;
  • -d<登入目錄>:指定用戶登入時的啟始目錄;
  • -D:變更預設值;
  • -e<有效期限>:指定帳號的有效期限;
  • -f<緩沖天數>:指定在密碼過期后多少天即關閉該帳號;
  • -g<群組>:指定用戶所屬的群組;
  • -G<群組>:指定用戶所屬的附加群組;
  • -m:自動建立用戶的登入目錄;
  • -M:不要自動建立用戶的登入目錄;
  • -n:取消建立以用戶名稱為名的群組;
  • -r:建立系統帳號;
  • -s:指定用戶登入后所使用的shell;
  • -u:指定用戶id。

passwd命令

passwd命令用于設置用戶的認證信息,包括用戶密碼、密碼過期時間等。系統管理者則能用它管理系統用戶的密碼。只有管理者可以指定用戶名稱,一般用戶只能變更自己的密碼。

  • -d:刪除密碼,僅有系統管理者才能使用;
  • -f:強制執行;
  • -k:設置只有在密碼過期失效后,方能更新;
  • -l:鎖住密碼;
  • -s:列出密碼的相關信息,僅有系統管理者才能使用;
  • -u:解開已上鎖的帳號。

id命令

id命令可以顯示真實有效的用戶ID(UID)和組ID(GID)。UID 是對一個用戶的單一身份標識。組ID(GID)則對應多個UID。id命令已經默認預裝在大多數Linux系統中。要使用它,只需要在你的控制臺輸入id。不帶選項輸入id會顯示如下。結果會使用活躍用戶。

當我們想知道某個用戶的UID和GID時id命令是非常有用的。一些程序可能需要UID/GID來運行。id使我們更加容易地找出用戶的UID以GID而不必在/etc/group文件中搜尋。如往常一樣,你可以在控制臺輸入man id進入id的手冊頁來獲取更多的詳情。

  • -g或–group   顯示用戶所屬群組的ID。
  • -G或–groups 顯示用戶所屬附加群組的ID。
  • -n或–name   顯示用戶,所屬群組或附加群組的名稱。
  • -r或–real   顯示實際ID。
  • -u或–user   顯示用戶ID。

su命令

su命令用于切換當前用戶身份到其他用戶身份,變更時須輸入所要變更的用戶帳號與密碼。

  • -c<指令>或–command=<指令>:執行完指定的指令后,即恢復原來的身份;
  • -f或——fast:適用于csh與tsch,使shell不用去讀取啟動文件;
  • -l或——login:改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,logname。此外,也會變更PATH變量;
  • -m,-p或–preserve-environment:變更身份時,不要變更環境變量;
  • -s或–shell=:指定要執行的shell;

原創文章,作者:XIAJIDONG,如若轉載,請注明出處:http://www.www58058.com/72205

(1)
XIAJIDONGXIAJIDONG
上一篇 2017-03-30
下一篇 2017-03-30

相關推薦

  • ACL實現靈活的權限管理

    ACL實現靈活的權限管理 除了文件的所有者,所屬組和其它人,可以對更多的用戶設置權限 CentOS7當中,無論是操作系統安裝時還是之后手工創建的文件系統(xfs、ext4)均會開啟ACL功能。 CentOS6及之前的版本,僅操作系統安裝時創建的文件系統才會默認開啟ACL,手工創建的文件系統,需要手工開啟ACL功能。 mount -o acl /dev/sda…

    2017-07-27
  • iptables 初識

    iptables 包過濾性防火墻     iptables是位于用戶空間,是防火墻管理配置規則的工具。     iptables的作用:用來添加,刪除,管理netfilter規則。     Netfilter是位于內核中真正的防火墻,由5個鉤子組成,…

    Linux干貨 2016-06-01
  • 第四周練習

    1.復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限。         # cp -r /etc/skel /home/tuser1      &nb…

    Linux干貨 2016-11-18
  • linux 邏輯卷管理

    lvm介紹:     lvm:全稱Logical Volume Manager,重點在于可以彈性調整filesystem 容量,并非在于數據安全     lvm:整合多個分區或者磁盤為一個整體,讓分區看起來想一個整體。     lvm:設備…

    Linux干貨 2016-09-01
  • Linux腳本基礎練習

    馬哥教育網絡班+ 第7周課堂練習 Linux腳本基礎練習 練習: 1、創建一個10G分區,并格式為ext4文件系統; (1)要求其block大小為2048,預留空間百分比為2,卷標為MYDATA,默認掛載屬性包含acl (2)掛載至/data/mydata目錄 要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳 第一步,在虛擬機中掛載一塊20G的新硬盤 &…

    Linux干貨 2016-11-09

評論列表(1條)

  • renjin
    renjin 2017-04-05 15:00

    詳細的介紹了linux的一些常用命令的參數,用法,內容寫的很好,并且排版也非常不錯,繼續努力。

欧美性久久久久