1. 程式人生 > >SHELL提示符學習彙總_1

SHELL提示符學習彙總_1


title: SHELL 提示符學習彙總
data: 2018-8-20
tags: [shell , 提示符 , 學習]
categories: [SHELL,學習,命令列]
grammar_cjkRuby: true
copyright: true

學習Linux,怎麼能不會命令列呢?本文是對Linux命令列的學習過程記錄。

簡單命令

  • date顯示當前時間和日期。

  • df 檢視磁碟使用情況。

  • exit結束終端會話。

  • pwd打印出當前工作目錄名。

  • cd更改目錄。

  • ls列出目錄內容。 以.字元開頭的檔名是隱藏檔案。這僅表示,ls 命令不能列出它們,用 ls -a

    命令就可以了。

  • file 確定檔案型別。

  • less瀏覽檔案內容。按下 q 按鍵退出

  • file filename打印出檔案內容的簡單描述。

cd快捷鍵

  • cd更改工作目錄到你的家目錄。
  • cd-跟改工作目錄到先前的工作目錄。
  • cd ̃user name更改工作目錄到使用者家目錄。
  • 符號.指的是工作目錄,..指的是工作目錄的父目錄。

ls快捷指令

  • -a --all 列出所有檔案,甚至包括檔名以圓點開頭的預設會被隱藏的隱藏檔案。
  • -d --directory 通常,如果指定了目錄名,ls 命令會列出這個目錄中的內容,而不是目錄本身。把這個選項與 -l 選項結合使用,可以看到所指定目錄的詳細資訊,而不是目錄中的內容。
  • -F -classify 這個選項會在每個所列出的名字後面加上一個指示
    符。例如,如果名字是目錄名,則會加上一個’/’ 字
    符。
  • -h --human-readable 當以長格式列出時,以人們可讀的格式,而不是以字
    節數來顯示檔案的大小。
  • -l 以長格式顯示結果。
  • -r --reverse 以相反的順序來顯示結果。通常,ls 命令的輸出結果
    按照字母升序排列。
  • -S 命令輸出結果按照檔案大小來排序。
  • -t 按照修改時間來排序。

操作檔案和目錄

  • cp 複製檔案和目錄

  • mv 移動/重新命名檔案和目錄

  • mkdir 建立目錄

  • rm 刪除檔案和目錄

  • ln 建立硬連結和符號連結

萬用字元

  • *匹配任意多個字元(包括零個或一個)
  • ? 匹配任意一個字元(不包括零個)
  • [characters] 匹配任意一個屬於字符集中的字元
  • [!characters] 匹配任意一個不是字符集中的字元
  • [[:class:]] 匹配任意一個屬於指定字元類中的字元
  • [:alnum:] 匹配任意一個字母或數字
  • [:alpha:] 匹配任意一個字母
  • [:digit:] 匹配任意一個數字
  • [:lower:] 匹配任意一個小寫字母
  • [:upper] 匹配任意一個大寫字母

cp的應用

  • -a, --archive 複製檔案和目錄,以及它們的屬性,包括所有權和許可權。通
    常,複本具有使用者所操作檔案的預設屬性。
  • -i, --interactive 在重寫已存在檔案之前,提示使用者確認。如果這個選項不指
    定,cp 命令會預設重寫檔案。
  • -r, --recursive 遞迴地複製目錄及目錄中的內容。當複製目錄時,需要這個
    選項(或者 -a 選項)。
  • -u, --update 當把檔案從一個目錄複製到另一個目錄時,僅複製目標目錄
    中不存在的檔案,或者是檔案內容新於目標目錄中已經存在
    的檔案。
  • -v, --verbose 顯示翔實的命令操作資訊。

mv應用舉例

  • -i --interactive 在重寫一個已經存在的檔案之前,提示使用者確認資訊。 如果不指定這個選項,mv 命令會預設重寫檔案內容。

  • -u --update 當把檔案從一個目錄移動另一個目錄時,只是移動不存在的檔案,或者檔案內容新於目標目錄相對應檔案的內容。

  • -v --verbose 當操作 mv 命令時,顯示翔實的操作資訊。

  • mv file1 file2 移動 file1 到 file2。如果 file2 存在,它的內容會被 file1 的內容重寫。 如果 file2 不存在,則建立 file2。 每種情況下,file1 不再存在。

  • mv -i file1 file2除了如果 file2 存在的話,在 file2 被重寫之前,使用者會得到提示資訊外,這個和上面的選項一樣。

  • mv file1 file2 dir1 移動 file1 和 file2 到目錄 dir1 中。dir1 必須已經存在。

  • mv dir1 dir2 如果目錄 dir2 不存在,建立目錄 dir2,並且移動目錄 dir1的內容到目錄 dir2 中,同時刪除目錄 dir1。如果目錄 dir2存在,移動目錄 dir1(及它的內容)到目錄 dir2。

rm應用

  • -i, --interactive 在刪除已存在的檔案前,提示使用者確認資訊。 如果不指定這個選項,rm 會默默地刪除檔案
  • -r, --recursive 遞迴地刪除檔案,這意味著,如果要刪除一個目錄,而此目錄又包含子目錄,那麼子目錄也會被刪除。要刪除一個目錄,必須指定這個選項。
  • -f, --force 忽視不存在的檔案,不顯示提示資訊。這選項顛覆了“–interactive”選項。
  • -v, --verbose 在執行 rm 命令時,顯示翔實的操作資訊。

ln 建立連結

ln 命令即可建立硬連結,也可以建立符號連結。可以用其中一種方法來使用它:ln file link建立硬連結,和:ln -s item link建立符號連結,“item” 可以是一個檔案或是一個目錄。


使用命令

  • type –說明怎樣解釋一個命令名
  • which –顯示會執行哪個可執行程式
  • man –顯示命令手冊頁
  • apropos –顯示一系列適合的命令
  • info –顯示命令 info
  • whatis –顯示一個命令的簡潔描述
  • alias –建立命令別名

type命令

type 命令是 shell 內部命令,它會顯示命令的類別,給出一個特定的命令名(做為引數)。它像這樣工作:type command

which命令

為了確定所給定的執行程式的準確位置,使用 which命令:

[[email protected] ~]$ which ls

/bin/ls

man命令

許多希望被命令列使用的可執行程式,提供了一個正式的文件,叫做手冊或手冊頁 (manpage)。一個特殊的叫做 man 的分頁程式,可用來瀏覽他們。它是這樣使用的:man program

appopos命令

apropos -顯示適當的命令,也有可能搜尋參考手冊列表,基於某個關鍵字的匹配項。輸出結果每行的第一個欄位是手冊頁的名字,第二個欄位展示章節。注意,man 命令加上“-k” 選項,和 apropos 完成一樣的功能。(在手冊頁搜素關鍵字)

whatis命令

whatis 程式顯示匹配特定關鍵字的手冊頁的名字和一行命令說明。

info命令

info -顯示程式 Info 條目。GNU 專案提供了一個命令程式手冊頁的替代物,稱為 “info”。info 內容可通過 info 閱讀器程式讀取。info 頁是超級連結形式的,和網頁很相似。

alias命令

alias name='string'建立自己的命令,刪除別名使用 unalias 命令。

重定向—>``<

shell 內部參考標準輸入,輸出和錯誤為各自的檔案描述符 0,1 和 2。shell 提供了一種表示法來重定向檔案,使用檔案描述符。

  • cat -連線檔案
  • sort -排序文字行
  • uniq -報道或省略重複行
  • grep -列印匹配行
  • wc -列印檔案中換行符,字,和位元組個數
  • head -輸出檔案第一部分
  • tail - 輸出檔案最後一部分
  • tee -從 Stdin 讀取資料,並同時輸出到 Stdout 和檔案

cat命令

cat 命令讀取一個或多個檔案,然後複製它們到標準輸出,就像這樣:cat [file]

管道線

命令可以從標準輸入讀取資料,然後再把資料輸送到標準輸出,命令的這種能力被一個shell 特性所利用,這個特性叫做管道線。使用管道操作符 “|”(豎槓),一個命令的標準輸出可以管道到另一個命令的標準輸入:
command1 | command2

過濾器

管道線經常用來對資料完成複雜的操作。有可能會把幾個命令放在一起組成一個管道線。通常,以這種方式使用的命令被稱為過濾器。過濾器接受輸入,以某種方式改變它,然後輸出它。舉例:ls /bin /usr/bin | sort | less

uniq命令

uniq 從標準輸入或單個檔名引數接受資料有序列表(詳情檢視 uniq 手冊頁),預設情況下,從資料列表中刪除任何重複行。加-d後顯示重複行。

wc命令

wc(字計數)命令是用來顯示檔案所包含的行,字和位元組數。

grep命令

grep 是個很強大的程式,用來找到檔案中的匹配文字。這樣使用 grep 命令:grep pattern [file...]
grep 有-對方便的選項:“-i” 導致 grep 忽略大小寫當執行搜尋時(通常,搜尋是大小寫敏感的),“-v” 選項會告訴 grep 只打印不匹配的行。

head/tail命令

有時候不需要一個命令的所有輸出。可能你只想要前幾行或者後幾行的輸出內容。head命令列印檔案的前十行,而 tail 命令列印檔案的後十行。預設情況下,兩個命令都列印十行文字,但是可以通過 “-n” 選項來調整命令列印的行數。

tee命令

tee 程式從標準輸入讀入資料,並且同時複製資料到標準輸出(允許資料繼續隨著管道線流動)和一個或多個檔案。當在某個中間處理階段來捕捉一個管道線的內容時,這很有幫助。