天天看點

linux基礎指令的整理(部分,會及時更新整理)

                          linux指令的大概總結

# command  [-options]  parameter1 parameter2...

  指令      選項       參數1      參數2

  []表示可執行或者可以忽略 ,使用時帶-

 指令太長的時候,可以使用反斜杠(\)來轉義[enter]符号,使指令延續到下一行。

 注意:反斜杠後立刻接特殊字元,才能轉義

------簡單指令的操作:

#date:顯示日期和事件

      date 系統時間

      clock  硬體時間 hwclock 硬體時間

#cal:顯示月曆

     #cal [[month]year]

#bc:電腦

------最重要的熱鍵[tab],[ctrl]-c,[ctrl]-d

           [tab]接在一串指令的第一個指令的後面,則為“指令補全”;

     [tab]接在一串指令的第二個指令以後時,則為“檔案補齊”。

 [ctrl]-c:按着[ctrl]不放然後按下c,中斷目前程式執行的指令;

 [ctrl]-d:相當于輸入exit.

-------man指令與info指令

#man

 分的章節:

1:使用者指令

2:系統調用

3:庫調用

4:特殊檔案(裝置檔案)

5:檔案格式(配置檔案的文法)

6:遊戲

7:雜項(miscelllaneous)

8:管理指令

man 指令出來的意思詳解。

    NAME:指令的名稱及功能簡要說明

    SYNOPSIS: 用法說明,包括可用的選項。

    DESCRIPTION:指令功能的詳盡說明,可能包括每一個選項的意義。

    OPTIONS:說明每一個選項的意義

    FILES: 此指令相關的配置檔案

    BUGS:

    EXAMPLES:使用示例

    SEE ALSO:另外參照

<>必須給出的  []可省略的  ...可以出現多次  |多選1   {}分組

解釋太多要翻屏: 

   向後翻一屏:SPACE

     前      :b

     後    行:enter

     前      :k

查找

/KEYWORD:向後

n:下一個

N:前一個

?KEYWORD:向前

q:退出

#info

   線上文檔:

  info command   也就是解釋指令的曆史。如發生過神馬大BUG之類的。

#nano

   文本編輯器

-------------------------------------檔案權限與目錄配置-----------------------------------------

linux檔案屬性:

    比如 #ls -all  出來的檔案屬性(單一取一個)

 drwxr-x--- 4 root root 4096 sep 8 14:06 .

  [1]     [2] [3]     [4]  [5]  [6]   [7]

  [權限]    [連接配接][所有者][使用者組][檔案容量][修改日期][檔案名]

  [1] :

  其中第一行:

   d :表示目錄

   - :表示檔案

   l :表示連接配接檔案 linkfile

   b :表示裝置檔案裡面的可提供存儲的接口裝置。--塊裝置

   c :表示裝置檔案裡面的串行端口裝置,例如鍵盤滑鼠(一次性讀取裝置)

  其中後9行 rwx

   r:可讀read

   w:可寫write

   x:可執行execute

  其中後9行三個為一組,

   第一組表示:檔案所有者的權限

   第二組表示:檔案所屬使用者組的權限

   第三組表示:其他非本使用者的權限

改變檔案的屬性與權限:

#chgrp  #chown  #chmod

#chgrp:改變檔案的使用者組

     #chgrp [-R] GRPNAME  DIRNAME/FILENAME      -R為遞歸的意思,既下層目錄and檔案同時改變

   -R:修改目錄及其内部檔案的屬組

   --reference=/path/to/somefile  file,...    改為跟哪個檔案一樣

#chown:改變檔案的所有者

 #chgrp [-R] 賬号名稱:組名  檔案或目錄(同chgrp)

  -R:修改目錄及其内部檔案的屬組

  --reference=/path/to/somefile  file,...    改為跟哪個檔案一樣

#cp

 #cp 源檔案 目标檔案  (同樣也複制其屬性與權限)

#chmod:改變檔案的權限

 #chmod [-R] MODE DIRNAME/FILENAME,...

 #chmod u(own),g(group),o(others),a(all)  +(加入) -(除去) =(相同)

   例子:#chmod u=rwx,go=rx .bashrc

 數字類型改變檔案的權限:

  r:4 w:2 x:1

------------------------------------linux檔案及目錄管理--------------------------------------------

相對路徑與絕對路徑:了解即可。

目錄的相關操作

.代表此層目錄

..代表上一層目錄

- 代表前一個工作目錄

~ 代表“目前使用者身份”所在的主檔案夾

~account 代表account 這個使用者的主檔案夾(account是個賬号名稱)

#cd 切換目錄

#pwd 顯示目前目錄

     -P:顯示連接配接路徑

#mkdir 建立一個新的目錄

    -p:建立比如/x/y/z,沒有y,直接先建立y然後z

    -v: verbose  詳細資訊

#rmdir 删除一個空的目錄

   删除的隻是空目錄

 删除檔案   :rm

   -f

   -r

    rm -rf  /    切記此删除全部。!!

#ls :檢視目錄與檔案

    -h:做機關轉換,作為ls裡面位元組大小的改動  如可以寫作 ls -l -h

    -a:顯示以.開頭的隐藏檔案。

        .表示當期目錄   ..表示目前目錄的上級目錄

    -A:顯示所有隐藏檔案但是不包括.和..

    -d:顯示目錄自身屬性

    -i:顯示檔案的代碼 比如 5645***檔案     index node,inode

    -r:逆序顯示

    -R:遞歸(recursive)顯示

 -l:列出長資料串,包含檔案的屬性與權限等資料

複制,删除,移動:cp、rm、mv

#cp:

   -i 是否複制(小紅帽特加的)

   -f 強制

   -L 複制的是檔案不是路徑

   -P複制的是路徑  -d同樣也是保持連接配接自己

   -R -r遞歸複制

   -a備份

#rm:

   -r 遞歸

#mv:

  -i 是否複制(小紅帽特加的)

  -f 強制

  -t (mv -t 目标  元)

-------------檔案内容查閱

#cat 

 -A:相當于-vET的整合參數,可列出一些特殊字元,而不是空白而已;

 -b:列出行号,僅針對非空白行做行号顯示,空白行不标行号;

 -E:将結尾的斷行字元$顯示出來;

 -n:列印出行号,聯通空白行也會有行号,與-b不同;

 -T:将[tab]按鍵以^I顯示出來

 -v:列出一些看不出來的特殊字元

#tac(反向列示)

------------資料選取

#head(取出前邊幾行)(預設顯示前10行)

     -n:後面接數字,代表顯示幾行的意思

#tail(取出後面幾行)

--------------修改檔案時間或建立新檔案:touch

#touch 修改檔案的時間戳。不存在檔案的時候添加檔案

       三個時間戳----3個。

      -c  僅修改檔案的時間,沒有檔案的時候不建立空檔案

      -a  修改通路時間  如  touch -a   a  第二個a為檔案

      -m  修改修改時間

      -t  指定的         如 touch -m -t 201577***

   -d:後面可以接欲修改的日期而不用目前的日期,也可以使用  --date="日期或時間";

----------------檔案預設權限umask

#umask

-----------------檢視檔案的類型:file

#file

 file  ~/.bashrc

---------------目錄的容量檢視#du

#du:

 -a:列出所有的檔案與目錄的容量,因為預設僅統計目錄下面的檔案容量而已;

 -h:以人們教易讀的容量格式(G/M)顯示;

 -s:列出總量而已,而不列出每個個别 的目錄占用容量;

 -S:不包括子目錄下的總計,與-s有點差别;

 -k:以KB列出容量顯示;

 -m:以MB列出容量顯示。

 ---------------------------------------bash----------------------------------------------

bash shell 的内置指令:type

#type:不加任何參數的時候,type會顯示出name是外部指令還是内置指令

    -t:當加入-t參數時,type會将name以下面這些字眼顯示出它的意義:

     file:表示為外部指令;

  alias:表示該指令為指令别名所設定的名稱;

  builtin:表示該指令為bash内置的指令功能。

 -p:如果後面接的name為外部指令時,才會顯示完整檔案名;

 -a:會由PATH變量定義的路徑中,将所有含name的指令都列出來,包含alias

變量的顯示:echo

變量的讀取:read

#read 

 -p:後面可以接提示符

 -t:後面可以接等待的秒數,不會一直等使用者;

      so......#read atext

        this is a text.    <==此時光标會等待你輸入。

        #echo atext

        this is a text.

  so.......#read “Please keyin your name:” -t 30 named

指令别名設定:alias

    #alias cls='clear'

------------指令曆史history

 #history

  -n:數字,是要列出最常使用的n條指令行的意思。

  -c:是将目前shell中所有的history内容全部消除

  -a:将目前新增的history指令新增如histfiles中,若沒有加histfiles,則預設寫入~/.bash_history

  -r:将histfiles的内容讀到目前這個shell的history記憶中

  -w:将目前的history記憶内容寫入history中。

 指令曆史的使用技巧:

         !n:執行指令曆史中的第n條指令;

         !-n:執行指令曆史中的倒數第n條指令;

         !!:執行上一條指令;

         !string(字元串):執行指令曆史中的最近一個以指定字元串開頭的指令

         !$:引用前一個指令的最後一個參數;

        ESC(鍵盤上的) .   :同上

        Alt+. 

--------------管道指令pipe

pipe表示為“|”

 管道:前一個指令輸出,作為後一個指令的輸入

 指令1|指令2|指令3|指令4|

選取指令:cut ,grep

#cut

 -d:後面接分割字元,與-f一起使用; -d ‘ ’

 -f:依據-d的分割字元将一段資訊分割成數段,-f表示選取第幾段的意思

 -c:以字元character的機關取出固定字元區間

#grep:

    Global Research 根據模式,搜尋文本,并将符合模式的文本行顯示出來。

    Pattern:文本字元和正規表達式的元字元組合而成比對條件

grep

   -i :忽略大小寫

   --color

   -v :顯示沒有被模式比對到的行

   -o :隻顯示被模式比對的字元串

排序指令:sort,wc,uniq

文本排序 sort

#sort:預設排序為升序

      -n:數值排序  #sort  -n  檔案    不用-n按照acill碼排序

      -r:降序排序

      -t:字段分隔符,指定

      -k:指定以哪個字段為關鍵字進行排序。

      -u:排序後相同内容隻顯示一個

      -f:排序時忽略字元大小寫

#uniq    相鄰的重複才顯示

    -c:顯示檔案中行重複的次數

    -d:隻顯示重複的行

文本統計:

#wc (word count)

    -l:行數

    -w:單詞數

    -c -m:位元組數

    -L最長的一行包含多少個字元

雙向重定義tee 

字元處理指令:tr   轉換或删除字元

#tr 'ab'  'AB'

     -d:删除出現在字元集中的所有字元

 #grep:

 *:任意長度的任意字元

 ?:任意單個字元

 []:以内

 [^]:以外

 正規表達式:REGular EXPression ,REGEXP

 元字元:

 . :任意單個字元

 []:比對指定範圍内的任意單個字元

 [^]:比對指定範圍外的任意單個字元

        字元集合[:digit:],[:lower:],.......

 比對次數(貪婪模式):

 *  :比對其前面的字元任意次 

 .* :任意長度的任意字元

 \?:比對其前面的字元1次或0次

 \{m,n\}:比對其前面的字元至少m次,至多n次

 位置錨定:

 ^ :錨定行首,此字元後邊的任意内容必須出現在行首

 $:錨定行尾,此字元前邊的任意内容必須出現在行尾

 ^$:空白行

 \<或\b :錨定詞首,其後面的任意字元必須作為單詞的首部出現

 \>或\b :錨定詞尾,其前邊的任意字元必須作為單詞的尾部出現

 分組:

 \(\) 

    \(ab\)*  ab可以出現0次或任意次

     後向引用

      \1:引用第一個左括号以及與之對應的右括号所包括的所有内容

      \2:

      \3:

本文轉自 陳延宗 51CTO部落格,原文連結:http://blog.51cto.com/407711169/1144137,如需轉載請自行聯系原作者

繼續閱讀