Linux常用命令

獲取命令的使用幫助的幾種方法:
 1.man:(針對於linux內部命令)
  man九章:
   1.用戶命令幫助文檔(所有用戶都可以執行的命令)
   2.系統調用
   3.庫調用(c庫調用)
   4.(特殊調用)設備和特殊文件
   5.配置文件格式
   6.遊戲相關的幫助信息
   7.雜項
   8.系統管理員類命令
   9.內核歷程相關的幫助信息
 在每個man手冊中都常見到的一些字段:
  NAME:程序的名稱及相關的功能的簡單描述
  SYNOPSIS:命令使用的語法格式
  DESCRIPTION:程序的詳細描述信息
  OPTIONS:選項的用法和選項的含義的詳細說明
  AUTHOR:程序作者的信息
  EXAMPLES:命令程序的使用範例
  REPORTING BUGS:報告程序中所含的BUG的方式,通常是電子郵件
  SEE ALSO:額外參考的內容
  FILE:與該程序相關的其他的文獻資料,如配置文件,README文檔等
 在幫助信息中可能出現的一些特殊符號的意義:
  []:可以省略不寫,也可以根據需要選擇使用
  {}:在花括號中一般包含豎線“|”,表示從所有項目中必須選擇而且只能選擇一個使用:“|”有或者之意
  <>:必須書寫的內容
  …:可以有更多內容
  區分內部命令和外部命令的方法:
   # type COMMEND
    查找結果中顯示爲“內嵌”或者“buildin”字樣的,則爲內部命令
    其餘的結果都爲外部命令
   內部命令的幫助獲取不使用man手冊,而使用help命令
    # help BUILDIN_COMMAND
 2.使用whereis命令獲得幫助
  可以查看程序的二進制文件、源代碼文件及幫助手冊所在的位置
 3.whatis
  可以獲取被匹配到的命令的手冊頁的描述信息
 4.which
  可以顯示命令的別名的定義方式和命令的二進制文件的路徑
 5.info命令
  infoCOMMAND
  獲取命令的在線幫助文檔
 6.有很多的程序有自帶的幫助文檔
  /usr/share/doc/APP_NAME-VERSION/
   README:程序的相關信息
   INSTALL:程序的安裝信息
   CHANGES:程序的版本更迭的歷程相關的信息
   LICENSE:程序所遵循的許可證類型
    GPL
    LGPL
    BSD
    Apache
    MIT
 7.搜索引擎
  Google
   搜索技巧  mysql filetype:pdf
      mysql site:51cto.com 
 8.相關的網站站點中的文檔信息
  wiki
  FAQ
 9.程序的發行方的官方站點提供的官方文檔
 10.參考書籍:
  O'Reiley
  Wrox
  電子工業出版社
 簡單的系統管理類的命令:
  註銷:在Linux裏邊就是退出登錄而已
   exit
   logout
   ctrll+d 
  重啓(重新引導):將運行於內存中的所有進程關閉,關閉系統內核,對於所有的計算機部件進程重新通電,加載內核,啓動應用程序,打印登陸提示符
   reboot
   shutdown -r -t #|now|time            (推薦)
    #:數字,表示相對時間,即#分鐘之後重新引導
    now:現在,立即重新引導,相當於-t 0;
    time:12:00
   init 6
  關閉系統:將運行於內存中的所有進程關閉,關閉系統內核,對於所有的計算機部件斷電
   halt
   poweroff
   init 0
   shutdown -h {#|now|time}        (推薦)
linux的哲學思想
 1.一切皆文件
  Linux把幾乎所有的數據和資源都抽象(虛擬)成文件的形式,甚至包括硬件網絡通信設備所使用的套接字以及管道都是如此
  文件:一組有邊界的位於存儲設備中的流式數據
 2.由衆多的功能單一的小程序組成,可以實現複雜任務
  功能單一:每個小程序只做一件事,只實現一個功能;並且要做到最好
  複雜任務:可以根據業務邏輯或業務類型,儘可能完美的組合多個小程序,使多個小程序相輔相成,將功能發揮至極致
 3.儘量避免與用戶直接交互
  在程序化,系統化,平臺化,自動化的運維空間中,人是極其易出錯的一個環節;儘量避免與用戶直接交互可以儘可能的保證結果的準確性和
      過程的高效性;易於以編程的方式實現自動化任務的實施;
 4.使用純文本文件保存程序的配置信息
  在程序出現錯誤或者執行不暢的時候,可以使用文本編程工具分析程序的錯誤原因,而不必依賴於二進制文件

文件系統:
 文件是分成兩部分存放:
  元數據:描述文件的屬性
  數據:文件的內容
  分層編址方式:
  在文件系統中,基於文件名引用文件,按名來進行文件存取
  在文件系統中,對於文件名有一系列的規定
   1.文件名不能包含“/”字符
    “/”表示根文件系統;所謂根文件系統,即爲Linux文件的原始起點;
    “/”表示路徑的分隔符
   2.文件名的長度不能超過255個字符
   3.在同一個位置,文件名不能重複使用;
   4.文件的名稱嚴格區分大小寫
  文件系統使用路徑的概念標識文件的位置;所謂路徑,就是定位一個文件所在的位置時,所必須經過的目錄的層級結構的集合
  
  文件系統中路徑的描述方式:
   絕對路徑:一切以“/”開始查找的路徑

   相對路徑:一切以“當前工作目錄”開始查找的路徑;
    “.”:表示當前工作目錄
    “..”:表示當前工作目錄的父目錄(上一級目錄)
    因此也可以說,一切以“.”或“..”開始查找的路徑,叫做相對路勁;而且在使用“.”表示當前工作目錄的時候,可以省略。
   如何選擇路徑?選擇絕對路徑還是相對路徑?
    如果在查找文件的時,目標文件和當前目錄不順路,就使用絕對路徑;如果順路就是用相對路徑
    順路指的是:當前工作目錄被包含在絕對路徑之中
   家目錄:
    每個用戶登錄系統時默認的當前工作目錄;也是每個用戶的起始目錄;也成爲“home directory”
   任何一個路徑其實都是由兩部分組成:
    文件的基名:
     basename
    文件的目錄名:
     dirname
FHS:文件系統的層級標準
 bin:binary,所有用戶(包括普通用戶)可以執行的普通操作命令
 boot(起步,啓動,引導):引導操作系統啓動的靜態文件,包括:引導程序,Linux內核,initramfs等;
 dev:device,設備
  塊設備:Block Device,隨機訪問,指的是能夠實現數據存放的設備
  字符設備:character device,順序訪問(線性訪問),指的是能夠實現數據傳輸和數據處理功能的設備;
 etc:Exsternal Text configure,存放主機中各應用程序的配置文件;
 home:普通用戶的默認家目錄的根;
 lib,lib64:Library,存放應用程序共享庫的目錄,內核的模塊
 media:可移動設備的掛載點;
 mnt:臨時文件系統的掛載點;
 opt:optional,可選的,以前此目錄是非常流行的第三方應用程序的安裝目錄
 
 root:root用戶的家目錄
 run:保存一些進程的PID文件;目前已廢棄
 sbin:super binary,存放那些還有超級用戶root能夠執行的系統管理類的命令
 srv:存放由系統提供的服務的數據

 tmp:temporary,臨時文件目錄,系統每30天會自動清理該目錄中的在30以上沒有訪問過的文件
 usr:usual system root,linux系統的第二根,現在主要用於安裝第三方應用程序;
  /usr/local:第三根,主要用於通過編譯源代碼的方式安裝第三方應用程序;
  /usr/src:存放第三方應用程序的源代碼;
 var:variable,變量,存放可變化的數據,數據庫類的文件
 僞文件系統,其中存放的是內存中的數據通過操作系統映射的文件
  proc:process,進程   
  sys:system
 文件類型:
  根據顏色來區分文件類型:
   黑色或白色:普通文本文件,regular file;
   綠色:可執行文件,命令;
   黃色:設備文件,包括塊設備和字符設備;
   紅色:包文件,包括:軟件包,壓縮包,歸檔包等;
   深藍色:目錄文件
   青藍色(天藍色):符號鏈接文件,相當於windows系統中的快捷方式;
   紫色(粉色):套接字文件;
   棕色:管道文件;
  根據文件類型的標記區分文件類型:
   -:普通文件
   b:塊設備文件
   c:字符設備文件:
   d:目錄文件;
   l:符號鏈接文件:
   p:管道文件
   s:套接字文件
  準確的區分文件類型:
   file命令
   #file/PATH/TO/SOMEFILE
常用的命令使用方法:
 1.echo: display a line of text
 常用選項:
  -n:不換行
  -e:使用\所引導的轉義序列生效;
  \n:換行
  \t:水平製表符
 2.cd
  change the shell working directory
  切換工作目錄
  cd[-L|[-P[-e]]] [dir]
  cd /PATH/TO/SOMEDIR:將工作目錄切換至參數所代表的目錄;
  cd:將工作目錄切換至當前登錄用戶的家目錄;相當於cd ~;
  cd -:將工作目錄切換至此前最後一次的工作目錄;
   shell提供了兩個變量;
    PWD
    OLDPWD
    注意,在SHELL中獲取變量值的方法;變量名嚴格區分大小寫;
    echo ${VAR_NAME}
  cd ~USERNAME:將工作目錄切換至指定用戶的家目錄中;
 3.pwd
  print the name of the current working directory
  打印當前工作目錄的名稱
 4.ls
  ls -list directory contents 
  注意:目錄的內容是文件名;
  ls [OPTION]...[FILE]...
  在Linux的文件系統中,所有以“.”作爲文件名的起始字符的文件,都是隱藏文件
  常用選項:
   -a,--all:顯示所有文件,包括隱藏文件;
   -A,--almost-all:顯示除了“.”和“..”之外的所有文件,包括隱藏文件
   --color[=WHEN]:以不同的顏色來顯示查詢結果
   -d,--directory:顯示目錄本身,而不是目錄中的文件名
   -h,--human-
   readable:在顯示文件大小的時候,顯示爲更加易讀的格式:通常與-l選項一同使用
   -l:使用長列表格式顯示文件的詳細屬性
   -rw-------.1 root root   1458 12月 23 2016 anaconda-ks.cfg
   -:表示文件類型
   rw-------:文件的權限位設置
   .:表示該文件是否具有特殊屬性或擴展屬性
   1:表示該文件被硬連接的次數
   root:文件的屬主(所有者)
   root:文件的屬組
   1458:表示文件的大小,在沒有使用-h選項時,其單位爲字節;
   12月 23 2016:文件的時間戳之一,表示最後一次被修改的時間
   anaconda-ks.cfg:文件名
   
   對於設備文件:
    ~]# ls -l /dev/sr0
    brw-rw----.1 root cdrom 11,0 9月  24  10:50 /dev/sr0
   11,0:major,minor 
   major:主設備號,用於標識設備類型,進而確定需要加載何種驅動程序
   minor:次設備號,用於標識同一種設備類型中的不同的設備
   
   設備號默認使用8位二進制表示,所以默認的設備號的範圍是0-255
   
    -r,--reverse:倒序輸出結果
   -R,--recursive:遞歸顯示,如果目標目錄中有子目錄,則遞歸顯示子目錄的內容,一次遞歸下去
   -Z,--context:顯示文件的SELinux安全上下文標籤
   
 5.mkdir
  mkdir - make directories,創建新目錄
  mkdir [OPTION]...DIRECTION...
   -P,--parents:在創建目錄的時候,如果其父目錄不存在,則優先創建之;
   -v,--verbose:爲每個被創建的目錄顯示一條信息
 6.rm
  rm - remove files or directories

  rm [OPTION]... FILE...
   -f, --force:暴力,強制刪除;
   -r, -R, --recursive:遞歸刪除目錄及目錄中的內容;
 7.touch
  touch - change file timestamps修改文件的時間戳記.
  -c, --no-create 不創建任何文件
  -a:僅修改文件的訪問時間戳
  -m:僅次該文件的修改時間戳
  -t decimtime
              這裏時間值 的格式爲MMDDhhmm[[CC]YY][.ss] 從左至右分別是月份,日期,小時,分鐘,可選的世紀和      年,以及可選的秒.      touch    
              將用這組數值修改指定文件的時間戳記.請注意,這個格式與POSIX標準所規定的格式並 不一樣.
    額外的,如果沒有指定-c選項,touch命令可以創建出被指定爲參數且不存在的文件
 8.stat
  stat - display file or file system status,顯示文件或文件系統的狀態;
  格式:stat [OPTION]... FILE...
   常用選項:
    -c, --format=FORMAT:以指定的格式顯示文件的指定狀態屬性;
 9.nano - Nano's ANOther editor, an enhanced free Pico clone
   nano [OPTIONS] [[+LINE,COLUMN] FILE]...
  ^:脫字符,表示鍵盤上的ctrl鍵
  ^+o:保存文檔內容
  ^+x:退出編輯界面
 10.cat - con;catenate files and print on the standard output  連接文件並在標準輸出上輸出
  格式:cat [OPTION]... [FILE]...
   常用選項:
    -b, --number-nonblank:對非空白行進行編號輸出;
    -n, --number:對所有行編號輸出;
    -s, --squeeze-blank:合併連續的空白行;
    -E, --show-ends:在行尾以$字符顯示;
  tac - concatenate and print files in reverse
  格式:tac [OPTION]... [FILE]...
  注意:cat或tac命令,如果沒有給出參數,則所有的內容需要通過標準輸入(從鍵盤鍵入)完成;而後可以使用"^+c"或者"^+d"退出即可;
 11.head - output the first part of files 輸出文件的起始部分
  格式:head [OPTION]...[FILE]...
   常用選項:
    -c, --bytes=[-]K:以字節爲單位顯示相應長度的內容;
    -n, --lines=[-]K:以行爲單位顯示相應長度的內容;
     可以使用-#K方式替換-n #K;
    注意:如果不使用任何選項,則默認顯示指定文件內容的前10行;如果文件中不足10行,則顯示全部內容;


 12. tail - output the last part of files 輸出文件的末尾部分
   格式:../src/tail [OPTION]... [FILE]...
   常用選項:-c, --bytes=N 輸出最後N個字節

            -f, --follow[={name|descriptor}]
                  當文件增長時,輸出後續添加的數據; -f, --follow以及 --follow=descriptor 都是相同的意思

            -n, --lines=N 輸出最後N行,而非默認的最後10行

 13.more
  more - file perusal filter for crt viewing 分頁顯示文檔內容
  格式:more [options] file [...]

  交互式編輯方法:
   可以使用"/"根據後續給出的字符串組合進行查找過濾;
   可以使用"n"找到下一個匹配項;
   使用"q"退出more模式;
   使用Enter,可以向下翻一行;
   使用Space,可以向下翻一頁;

 14.less
  less - opposite of more 
   格式:less [options] file [...]
   交互式編輯方法:
   可以使用"/"或"?"根據後續給出的字符串組合進行查找過濾;
   可以使用"n"或"N"找到下一個匹配項;
   使用"q"退出more模式;
   使用Enter,可以向下翻一行;
   使用Space,可以向下翻一頁;
   
 日期和時間相關的命令:
 15.date
  操作系統時間,簡稱系統時間,使用軟件模式的時鐘記錄的時間
  date - printf or set the system date and time
  格式:
   date [OPTION]... [+FORMAT]
         date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
   常用選項:
    -s, --set =STRING:設置系統時間爲指定的時間
    兩種格式:
     1)MMDDHHmm[[CC]YY][.ss]
     2)"CCYY-MM-DD HH:mm:ss" 或"CCYY/MM/DD HH:mm:ss"
  FORMAT
   
     %F:表示完整的年月日格式,即:YY-mm-dd
     %T:表示完整的時分秒格式,及:HH:MM:SS
     %Y:表示完整年份
     %m:表示月份
     %d:表示日期
     %H:表示小時
     %M:表示分鐘
     %S:表示秒鐘
     %s:時間戳,從1970-01-01 00:00:00到當前系統時間所經歷的秒數;
     注意:1970年1月1日作爲Unix元年;
     此時間戳是由32位二進制表示的,所以其表示的最大範圍0~4294967295;
 16.clock/hwclock
  hwclock - query or set the hardware clock (RTC)
   格式:
   hwclock [function] [option...]
   常用選項:
    -s, --hctosys:根據硬件時鐘設置系統時間;
    -w, --systohc:根據系統時間設置硬件時鐘;(不推薦)
 17.cal
  與關機,重啓,註銷有關的命令
  關機:half,poweroff,shutdown -h TIME,init 0:;
  重啓:reboot,shutdown -r TIME,init 6;
  註銷:exit,logout,^+d;
 18.cp
  cp - copy files and directories
  格式:cp [OPTION]... [-T] SOURCE DEST:單源複製
        cp [OPTION]... SOURCE... DIRECTORY:多源複製

 
  注意:
   1)cp命令至少要接兩個參數
   2)最後一個參數,通常是此次複製的目標
   3)如果在複製時給出的目標是目錄,則直接將文件複製到指定的目錄中,保留原文件名;如果在複製非目錄文件時,給出的目標是非目錄的文件    ,則此次操作時複製並改名。
  
   常用選項:
    -R,-r,--recursive:遞歸的複製目錄文件:
    -d   same as --no-dereference  --preserve=links
     複製的源文件是符號鏈接文件時,-d選項可以保留該符號鏈接文件作爲此次的源文件被複制,而不會複製該符號鏈接文件所指     的文件
 19.mv
  mv - 移動 (改名) 文件
  格式:
    mv [選項]... 源文件 目標文件
           mv [選項]... 源文件... 目錄
   常用選項:
    -f, --force :覆蓋前永不提示
    -n, --no-clobber:移動文件時,如果源文件與目標位置中的文件重名,則不移動



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章