Linux 基礎命令

一,GNU/LINUX操作系統組成

    
Linux 基礎命令

 
1.1硬件
 計算機硬件資源,CPU,主板,內存,存儲器等
1.2 內核層
包含了硬件控制,設備驅動程序,虛擬文件系統,網絡管理,內存管理,進程管理,程序調度等 ,屬于內核空間
1.3 系統調用
所有的操作系統在其內核里都有一些內建的函數,這些函數可以用來完成一些系統級別的功能。Linux系統使用的這樣的函數叫做“系統調用”,英文是systemcall。這些函數代表了從用戶空間到內核空間的一種轉換。
1.4 應用程序
  運行在操作系統之上,實現用戶與操作系統的交互
二,Linux shell介紹
        操作系統的外殼,作為命令語言,它交互式解釋和執行用戶輸入的命令或者自動地解釋和執行預先設定好的一連串的命令,從而實現用戶和操作系統的交互;作為程序設計語言,它定義了各種變量和參數,并提供了許多在高級語言中才具有的控制結構,包括循環和分支;
三,Linux命令格式
 command [-options] parameter1 parameter2 …
      命令       選項         參數(1)       參數(2)  …. 參數(N)
說明:
1. command 為命令的名稱,例如變換路徑的命令為 cd 等等;
2. 中刮號[]并不存在于實際的命令中,而加入選項配置時,通常選項前會帶 – 號,
   例如 -h;有時候會使用選項的完整全名,則選項前帶有 — 符號,例如 –help;
3. parameter1 parameter2.. 為依附在選項后面的參數,或者是 command 的參數; 
4. 命令, 選項, 參數等這幾個咚咚中間以空格來區分,不論空幾格 shell 都視為一格; 
5. 按下[Enter]按鍵后,該命令就立即運行。[Enter]按鍵代表著一行命令的開始啟動。
四,Linux命令幫助
4.1 man page 
4.1.1 定義
  Linux 提供man page ,及手冊。通過man指令可以查看Linux中的指令幫助、配置文件幫助和編程幫助等信息; 
舉例:man man 
Linux 基礎命令

 
4.1.2 man page的內容介紹
NAME                       簡短的命令、數據名稱說明
SYNOPSIS               簡短的命令下達語法(syntax)簡介
DESCRIPTION         較為完整的說明,這部分最好仔細看看!
OPTIONS                 針對 SYNOPSIS 部分中,有列舉的所有可用的選項說明
COMMANDS            當這個程序(軟件)在運行的時候,可以在此程序(軟件)中下達的命令
FILES                       這個程序或數據所使用或參考或連結到的某些文件
SEE ALSO                可以參考的,跟這個命令或數據有相關的其他說明!
EXAMPLE                一些可以參考的范例
BUGS                       是否有相關的BUG
4.1.3 man 命令后數字代表含義
1 使用者在shell環境中可以操作的命令或可運行文件
2 系統核心可呼叫的函數與工具等
3 一些常用的函數(function)與函式庫(library),大部分為C的函式庫(libc)
4 設備文件的說明,通常在/dev下的文件
5 裝置文件的說明,通常在/dev下的文件
6 游戲(games)
7 慣例與協議等,例如Linux文件系統、網絡協議、ASCII code等等的說明
8 系統管理員可用的管理命令
9  跟kernel有關的文件
4.1.4 常用參數
 -C, –config-file=文件   使用該用戶設置文件
  -d, –debug                輸出調試信息
  -D, –default              將所有選項都重置為默認值
      –warnings[=警告]    開啟 groff 的警告
 
主要運行模式:
  -f, –whatis               等同于 whatis
  -k, –apropos              等同于 apropos
  -K, –global-apropos       search for text in all pages
  -l, –local-file
                             把“手冊頁”參數當成本地文件名來解讀
  -w, –where, –path, –location
                             輸出手冊頁的物理位置
  -W, –where-cat, –location-cat
                             輸出 cat 文件的物理位置
 
  -c, –catman               由 catman 使用,用來對過時的 cat
                             頁重新排版
  -R, –recode=編碼        output source page encoded in ENCODING
4.1.5 舉例
[root@my03 ~]# man -f ls
ls (1)               – list directory contents

4.2 info幫助

4.2.1 說明
      常用工具命令 info命令是Linux下info格式的幫助指令。
       就內容來說,info頁面比man page編寫得要更好、更容易理解,也更友好,但man page使用起來確實要更容易得多。一個man page只有一頁,而info頁面幾乎總是將它們的內容組織成多個區段(稱為節點),每個區段也可能包含子區段(稱為子節點)。理解這個命令的竅門就是不僅要學習如何在單獨的Info頁面中瀏覽導航,還要學習如何在節點和子節點之間切換??赡軇傞_始會一時很難在info頁面的節點之間移動和找到你要的東西,真是具有諷刺意味:原本以為對于新手來說,某個東西比man命令會更好些,但實際上學習和使用起來更困難。
4.2.2 語法
       info  (選項)(參數)    
-d:添加包含info格式幫助文檔的目錄; 
-f:指定要讀取的info格式的幫助文檔; 
-n:指定首先訪問的info幫助文件的節點; 
-o:輸出被選擇的節點內容到指定文件。
4.2.3舉例
info info
Linux 基礎命令

4.3 help 
4.3.1 定義
   help命令用于顯示shell內部命令的幫助信息。help命令只能顯示shell內部的命令幫助信息。而對于外部命令的幫助信息只能使用man或者info命令查看。
4.3.2 舉例
Linux 基礎命令

 4.4 搜索引擎和互聯網在線工具
 1)谷歌,百度等搜索引擎
 2)在線命令例如:http://linux.51yip.com/
五,常見命令
5.1 ifconfig
   ifconfig 是一個用來查看、配置、啟用或禁用網絡接口的工具,這個工具極為常用的??梢杂眠@個工具來臨時性的配置網卡的IP地址、掩碼、廣播地址、網關等。也可以把 它寫入一個文件中(比如/etc/rc.d/rc.local),這樣系統引導后,會讀取這個文件,為網卡設置IP地址;
 
語   法:ifconfig [網絡設備][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<網絡設備類型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<網絡媒介類型>][mem_start<內存地址>][metric<數目>][mtu<字節>][netmask<子網掩碼>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
 
參數: 
up 啟動指定網絡設備/網卡
down 關閉指定網絡設備/網卡
-arp 設置指定網卡是否支持ARP協議
-promisc 設置是否支持網卡的promiscuous模式,如果選擇此參數,網卡將接收網絡中發給它所有的數據包
-allmulti 設置是否支持多播模式,如果選擇此參數,網卡將接收網絡中所有的多播數據包
-a 顯示全部接口信息
-s 顯示摘要信息(類似于 netstat -i)
add 給指定網卡配置IPv6地址
del 刪除指定網卡的IPv6地址
<硬件地址> 配置網卡最大的傳輸單元
mtu<字節數> 設置網卡的最大傳輸單元 (bytes)
netmask<子網掩碼> 設置網卡的子網掩碼
tunel 建立隧道
dstaddr 設定一個遠端地址,建立點對點通信
-broadcast<地址> 為指定網卡設置廣播協議
-pointtopoint<地址> 為網卡設置點對點通訊協議
multicast 為網卡設置組播標志
為網卡設置IPv4地址
txqueuelen<長度> 為網卡設置傳輸列隊的長度
舉例:
# ifconfig   #處于激活狀態的網絡接口 
# ifconfig -a  #所有配置的網絡接口,不論其是否激活 
# ifconfig eth0  #顯示eth0的網卡信息
5.2 echo
echo – 顯示一行文本
 
允許在標準輸出上顯示STRING(s).
-n 不輸出行尾的換行符.
-e 允許對下面列出的加反斜線轉義的字符進行解釋.
-E 禁止對在STRINGs中的那些序列進行解釋.
–help 顯示幫助并退出(須單獨運行)
–version 輸出版本信息并退出(須單獨運行)
在沒有 -E 的情況下,可承認并可以內置替換以下序列: 
\NNN       字符的ASCII代碼為NNN(八進制) 
\\             反斜線 
\a            報警符(BEL)
\b            退格符
\c           禁止尾隨的換行符 
\f            換頁符 
\n           換行符 
\r            回車符 
\t           水平制表符 
\v           縱向制表符

舉例:
[root@my03 ~]# echo -e “hello world\n”
hello world
[root@my03 ~]# echo -en “hello world\n”
hello world
5.3 tty
用法:tty [選項]…
顯示出連接到當前標準輸入的終端設備文件名。
 
  -s, –silent, –quiet 什么也不顯示,只返回退出狀態值
      –help            顯示此幫助信息并退出
      –version         顯示版本信息并退出
舉例:
[root@my03 ~]# tty 
/dev/pts/1
5.4  startx
startx  啟動圖形界面
5.5 export
export: export [-fn] [名稱[=值] …] 或 export -p
    為 shell 變量設定導出屬性。 
    標記每個 NAME 名稱為自動導出到后續命令執行的環境。如果提供了 VALUE
    則導出前將 VALUE 作為賦值。 
    選項:
      -f        指 shell 函數
      -n        刪除每個 NAME 名稱的導出屬性
      -p        顯示所有導出的變量和函數的列表 
    `–‘ 的參數禁用進一步的選項處理。
 
    退出狀態:
    返回成功,除非使用了無效的選項或者 NAME 名稱。
舉例:
[root@my03 ~]# export aaa=bbb
[root@my03 ~]# echo $aaa
bbb
5.6 pwd
pwd: pwd [-LP]
    打印當前工作目錄的名字。
 
    選項:
      -L        打印 $PWD 變量的值,如果它命名了當前的
        工作目錄
      -P        打印當前的物理路徑,不帶有任何的符號鏈接
 
    默認情況下,`pwd’ 的行為和帶 `-L’ 選項一致
 
    退出狀態:
    除非使用了無效選項或者當前目錄不可讀,否則
    返回狀態為0。
舉例
[root@my03 ~]# pwd -P
/root
5.7  history
history: history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 參數 [參數…]
    顯示或操縱歷史列表。 
    帶行號顯示歷史列表,將每個被修改的條目加上前綴 `*’。
    參數 N 會僅列出最后的 N 個條目。
 
    選項:
      -c        刪除所有條目從而清空歷史列表。
      -d 偏移量 從指定位置刪除歷史列表。 
      -a        將當前繪畫的歷史行追加到歷史文件中
      -n        從歷史文件中讀取所有未被讀取的行
      -r        讀取歷史文件并將內容追加到歷史列表中
      -w        將當前歷史寫入到歷史文件中,并追加到歷史列表中 
      -p        對每一個 ARG 參數展開歷史并顯示結果, 而不存儲到歷史列表中
      -s        以單條記錄追加 ARG 到歷史列表中 
    如果給定了 FILENAME 文件名,則它將被作為歷史文件。否則
    如果 $HISTFILE 變量有值的話使用之,不然使用 ~/.bash_history 文件。 
    如果 $HISTTIMEFORMAT 變量被設定并且不為空,它的值會被用于
    strftime(3) 的格式字符串來打印與每一個顯示的歷史條目想關聯的時
    間戳,否則不打印時間戳。
舉例:
[root@my03 ~]# history 2
  194  help history
  195  history 2
[root@my03 ~]#
5.8 shutdown

   shutdown 以一種安全的方式關閉系統。所有登陸用戶都可以看到關機信息提示,并且 login (1) 將被阻塞。可以指定立刻關機,也可以指定系統在一定的延時后關機。所有進程都將接收到 SIGTERM 信號。這可以使 vi (1) 等程序有時間將處于編輯狀態的文件進行存儲,郵件和新聞程序進程則可以將所有緩沖池內的數據進行適當的清除等等。 shutdown 通過通知 init 進程,要求它改換運行級別來實現。運行級別 0 用來關閉系統,運行級別 6 用來重啟系統,運行級別 1 用來使系統進入執行系統管理任務狀態,如果沒有給出 -h 或 -r 標志時,這是 shutdown 命令的默認工作狀態。具體關機或重啟所執行的操作請查閱 /etc/inittab 文件中相應的運行級別欄。

shutdown [OPTIONS…] [TIME] [WALL…]
選項 OPTIONS
 -a             使用 /etc/shutdown.allow 來驗證身份。
-t sec        通知 init(8) 在轉換到其它運行級別前,發送警告 (warning) 信號后延時 (sec) 秒數后再發送關閉 (kill) 信號。
-k               并非真正關機,只向所有人顯示警告信息。
-r                重啟。
-h               停機。
-n               [DEPRECATED(不應再使用)] 不調用 init(8) 程序進行關機操作,而由自己進行。不建議用戶使用這種關機方式,它的結果一般也不是你希望的那樣。
-f               重啟時跳過磁盤檢測。
-F              重啟時強制磁盤檢測。
-c              取消運行中的 shutdown 進程。不可能為此選項指定 time 參數,但你可以在命令行輸入一條解釋消息來向所有用戶說明。(一般的shutdown指令可以用按“+”號來進行中斷)
time           關機時間。
warning-message    發送給所有用戶的消息。

 說明:
time 參數的格式可以有很多種。首先,可以是 hh:mm 格式的絕對時間,其中 hh 指的是小時(一到二位數),mm 指的是分鐘(二位數)。第二種是 +m 格式,其中 m 指的是等待的分鐘數。 now 是 +0 的別名。
    如果 shutdown 在調用時使用了延時,它將自動創建一個咨詢 (advisory) 文件 /etc/nologin ,作用是禁止 login(1) 允許新用戶登陸,除非 shutdown 在向 init 發信號前意外中止 (就是說,它被取消或出了什么問題)。它會在調用 init 改變運行級之前刪除這個文件。
-f
    標志意味著 `快速重啟’。這將創建一個咨詢 (advisory) 文件 /fastboot ,此文件在系統重啟時會被檢測到。啟動腳本 rc 會檢測是否存在這樣的文件,如果有,就不會再運行 fsck(1),因為系統是以正常方式關閉的。這之后,啟動進程會刪除 /fastboot。
-F
    標志意味著 `強制 fsck’。這將創建一個咨詢 (advisory) 文件 /forcefsck,此文件在系統重啟時會被檢測到。啟動腳本 rc 會檢測是否存在這個文件,如果有,就運行 fsck(1) 并且加上一個特殊的 `force’         標志,以使得即使正常卸載的文件系統也被檢查。這之后,啟動進程會刪除 /forcefsck。
 
-n 標志導致 shutdown 不調用 init 程序進行關機,而是自己關閉所有運行中的進程。shutdown 接下來會關閉配額 (quota),記賬 (accounting) 和交換分區,卸載所有文件系統。
# shutdown –h now   #關機 
# shutdown –h 23:00   #晚上11點關機 
# shutdown –r now   #重啟
5.9 poweroff
   poweroff命令用來關閉計算機操作系統并且切斷系統電源。
 
poweroff [OPTIONS…]   
常用參數: 
-n:關閉操作系統時不執行sync操作;
-w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中;
-d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄;
-f:強制關閉操作系統;
-i:關閉操作系統之前關閉所有的網絡接口;
-h:關閉操作系統之前將系統中所有的硬件設置為備用模式。
5.10 reboot
reboot 重啟。
 
語法:reboot [OPTIONS…] 
補充說明:執行reboot指令可讓系統停止運作,并重新開機。 
選項:
  -d  重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有”-n”參數的效果。
  -f  強制重新開機,不調用shutdown指令的功能。
  -i  在重開機之前,先關閉所有網絡界面。
  -n  重開機之前不檢查是否有未結束的程序。
  -w  僅做測試,并不真的將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。
5.11 hwclock
與clock命令相同
hwclock [功能] [選項…]   
功能:
 -h, –help           顯示此幫助并退出
 -r, –show           讀取硬件時鐘并打印結果
     –set            將 RTC 設置為 –date 指定的時間
 -s, –hctosys        從硬件時鐘設置系統時間
 -w, –systohc        從當前系統時間設置硬件時鐘
     –systz          基于當前時區設置系統時間
     –adjust         根據自上次時鐘設置或調整后的系統漂移
                        來調整 RTC
 -c, –compare        定期將系統時鐘與 CMOS 時鐘相比較
     –getepoch       打印內核的硬件時鐘紀元(epoch)值
     –setepoch       將內核的硬件時鐘紀元(epoch)值設置為
                        –epoch 選項指定的值
     –predict        預測 –date 選項所指定時刻讀取到的 RTC 值
 -V, –version        顯示版本信息并退出
 
選項:
 -u, –utc                硬件時鐘保持為 UTC 時間
     –localtime        硬件時鐘保持為本地時間
 -f, –rtc <文件>     代替默認文件的特殊 /dev/… 文件
     –directisa         直接訪問 ISA 總線,而非 /dev/rtc
     –badyear          忽略  RTC 年份(由于 BIOS 損壞)
     –date <時間>    指定要設置的硬件時鐘時間
     –epoch <年>     指定作為硬件紀元(epoch)值起始的年份
     –noadjfile            不訪問 /etc/adjtime;需要使用 –utc 或 –localtime 選項
     –adjfile <文件>  指定調整文件的路徑; 默認為 /etc/adjtime
     –test                 不更新,只顯示將進行什么操作
 -D, –debug          調試模式
5.12 date
date – 打印或設置系統日期和時間 
根據指定格式顯示當前時間或設置系統時間.
 date [OPTION]… [+FORMAT]
 date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
選項: 
-d, –date=STRING           顯示由 STRING 指定的時間, 而不是當前時間
-f, –file=DATEFILE          顯示 DATEFILE 中每一行指定的時間, 如同將 DATEFILE 中的每行作為 –date 的參數一樣
 -I, –iso-8601[=TIMESPEC]   按照 ISO-8601 的日期/時間格式輸出時間.
     TIMESPEC=`date’ (或者不指定時)僅輸出日期,等于 `hours’, `minutes’, 或`seconds’ 時按照指定精度輸出日期及時間. 
-r, –reference=FILE         顯示 FILE 的最后修改時間
-R, –rfc-822                     根據 RFC-822 指定格式輸出日期
-s, –set=STRING             根據 STRING 設置時間
-u, –utc, –universal         顯示或設置全球時間(格林威治時間)
–help                                顯示本幫助文件并退出
–version                          顯示版本信息并退出
 
格式 FORMAT 控制著輸出格式. 僅當選項指定為全球時間時本格式才有效。 分別解釋如下: 
%%                                 文本的 %
%a                                  當前區域的星期幾的簡寫 (Sun..Sat)
%A                                  當前區域的星期幾的全稱 (不同長度) (Sunday..Saturday)
%b                                  當前區域的月份的簡寫 (Jan..Dec)
%B                                 當前區域的月份的全稱(變長) (January..December)
%c                                  當前區域的日期和時間 (Sat Nov 04 12:02:33 EST 1989)
%d                                  (月份中的)幾號(用兩位表示) (01..31)
%D                                日期(按照 月/日期/年 格式顯示) (mm/dd/yy)
%e                                 (月份中的)幾號(去零表示) ( 1..31)
%h                                 同 %b
%H                               小時(按 24 小時制顯示,用兩位表示) (00..23)
%I                                小時(按 12 小時制顯示,用兩位表示) (01..12)
%j                                (一年中的)第幾天(用三位表示) (001..366)
%k                               小時(按 24 小時制顯示,去零顯示) ( 0..23)
%l                                小時(按 12 小時制顯示,去零表示) ( 1..12)
%m                              月份(用兩位表示) (01..12)
%M                              分鐘數(用兩位表示) (00..59)
%n                               換行
%p                               當前時間是上午 AM 還是下午 PM
%r                                時間,按 12 小時制顯示 (hh:mm:ss [A/P]M)
%s                               從 1970年1月1日0點0分0秒到現在歷經的秒數 (GNU擴充)
%S                               秒數(用兩位表示)(00..60)
%t                                水平方向的 tab 制表符
%T                               時間,按 24 小時制顯示(hh:mm:ss)
%U                              (一年中的)第幾個星期,以星期天作為一周的開始(用兩位表示) (00..53)
%V                              (一年中的)第幾個星期,以星期一作為一周的開始(用兩位表示) (01..52)
%w                             用數字表示星期幾 (0..6); 0 代表星期天
%W                            (一年中的)第幾個星期,以星期一作為一周的開始(用兩位表示) (00..53)
%x                              按照 (mm/dd/yy) 格式顯示當前日期
%X                             按照 (%H:%M:%S) 格式顯示當前時間
%y                              年的后兩位數字 (00..99)
%Y                              年(用 4 位表示) (1970…)
%z                              按照 RFC-822 中指定的數字時區顯示(如, -0500) (為非標準擴充)
%Z                              時區(例如, EDT (美國東部時區)), 如果不能決定是哪個時區則為空

舉例:
[root@my03 ~]# date +%m%d%H%M%S
0923064553
[root@my03 ~]# date +%F
2016-09-23
[root@my03 ~]#
 
 

  

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

(0)
N24_liuzN24_liuz
上一篇 2016-10-29
下一篇 2016-10-29

相關推薦

  • Linux進程管理-初級

    Linux進程管理-初級 背景: 在學習完Linux進程管理后,發現這一塊的知識點比較多,很多都是自己以前沒有接觸過的,而且這部分知識對今后的工作有很大幫助,在這里做個學習的總結,供以后復習。 進程介紹: 什么是進程 進程(Process):運行中的程序的一個副本,是被載入內存的一個指令集合,進程有進程ID(Process ID,PID),用來標記每個進程,…

    2017-08-26
  • 馬哥教育網絡21期+第十四周練習博客

    馬哥教育網絡21期+第十四周練習博客 1、限制本地主機的web服務器在周一不允許訪問;新請求的速率不能超過100個每秒;web服務器包含了admin字符串的頁面不允許訪問;web服務器僅允許響應報文離開本機; 這里web服務器僅允許響應報文離開本機這里的響應報文為ESTABLISHED [root@localhost ~]# iptabl…

    Linux干貨 2016-12-05
  • 下載編譯安裝httpd 2.4最新版本

    關于這個問題分三步講:1.下載最新版本;2.編譯;3.安裝 一:下載httpd 2.4的最新版本:(這里以Centos 7為例,Centos 6里用的是2.2版本的) 下載的話如何找下載路徑—–>下載后是存在windows下,如何將其移進linux中  1.下載路徑: 當然我們現在只要是碰到不會或者不知道的東西,通常會…

    2017-08-26
  • MBR與GPT分區結構的不同及磁盤分區命令總結

    一、MBR分區結構 主引導記錄(Master Boot Record,縮寫:MBR),又叫做主引導扇區,是目前比較流行的一種分區結構。磁盤的0磁道0扇區稱為MBR,它的大小是512字節,這個區域被分為三個部分: 第一部分為boot loader(主引導程序),占446字節; 第二部分為Partition table(分區表),即DPT,占64字節,每個分區項…

    Linux干貨 2016-08-29
  • Linux的初步認識

         Linux的哲學思想 (1)一切都是一個文件(包括硬件) (2)小型,單一用途的程序 (3)鏈接程序,共同完成復雜的任務 (4)避免令人困惑的用戶界面 (5)配置數據儲存在文本中 1.Linux分為普通用戶和root用戶 普通用戶:權利非常有限對系統的損害比較小 root用戶:被稱作為超級用戶,對系統接近完整的控制,對…

    2017-05-20
  • 馬哥教育21期網絡班—第12周課程+練習—-LAMP練習

    1、請描述一次完整的http請求處理過程; (1) 建立或處理連接:接收請求或拒絕請求 (2) 接收請求: 接收來自于網絡的請求報文中對某資源的一次請求的過程; 持久連接:接收到請求不會斷開這個請求 非持久連接:一個連接請求斷開一次 并發訪問響應模型(Web I/O): 單進程I/O結構:啟動一個進程處理用戶請求,而且一次只處理…

    Linux干貨 2016-09-26

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-11-02 16:37

    總結的不錯,希望你能熟知這些基礎的知識,加油!

欧美性久久久久