歡迎您光臨本站 註冊首頁

rhce033--lecture3

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

學完這個單元,你應該掌握下面:
1.在命令提示符下執行命令
2.解釋一些簡單命令的目的和用法
3.使用系統內的幫助資源

running commands

一、命令具有下面的語法:
1. command options arguments

二、每一個條目用空格分開

三、選項是用於改變一個命令的行為
1. 單字母選項通常加上前綴 -
可以這樣寫: -a -b -c 或者: -abc
2.完整單詞的選項通常加上前綴 --
例如: --help

四、參數是命令需要的一些文件名或其它數據

五、多個命令可以用符號 ; 分隔開

Interrupting command execution

如果你輸入一個命令並且沒有返回到提示符,那麼這條命令可能正忙於執行或等待輸入。

要中斷一個執行了太久的命令,可以使用組合鍵 Ctrl+c

偶爾你會執行一條命令卻忘了輸入想追加的參數,這時,你可以使用 Ctrl+c 中斷命令的執行(在後面的課程中,我們將深入討論進程管理)

Running multiple commands

你可以在同一行用分號分隔多條命令。當前一條命令執行完畢,下一條命令將開始執行。
[student@stationX ~ ]$ mkdir backups; cp *.txt backups/

some simple commands

一、date——顯示日期和時間

二、cal——顯示日曆

date 命令可以將系統的日期和時間列印出來。輸出的格式可以通過可選的格式化字元串進行配置(可以通過 date --help 查看此命令的選項)。下面的例子將演示這些特性。

[student@stationX ~]$ date
Wed Mar 23 13:51:33 CST 2011
[student@stationX ~]$ date +"Today is %A, %B %d, %Y.%nIt is %r, %Z."
Today is Wednesday, March 23, 2011.
It is 01:52:37 PM, CST.


cal 命令可以列印出當前月份的 ASCII calendar。 當僅僅給出一個數字作為參數時,cal 命令將輸出這個數字所代表的年份的日曆。記住,使用年份的時候要使用四位數字,如果你執行類似這樣的命令: cal 06
那麼將輸出公元06年的日曆,而不是2006年的日曆。

給出月份和年份的參數,cal 命令將輸出這個特定月份的日曆。例如:

[student@stationX ~]$ cal 3 2011
March 2011
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

嘗試下顯示1752年9月份的日曆,看看你會有什麼新發現^_^

getting help

一、不要試圖去記住任何東西。

二、有許多不同等級的幫助。
1. whatis
2. command --help
3. man 和 info
4. /usr/share/doc/
5. redhat 文檔

除了所有的優點,命令行介面的一個缺點就是用戶需要使用大量的命令和參數。剛接觸命令行的新手常犯的一個錯誤就是想當然的認為這要求記住每一個瑣碎的參數。

在linux的神秘領域,你的目的是成為一個高手而不需要變成一個僅僅記錄的資料庫(要達到這一目的是需要時間的積累的)。實際上,記住那些常用的命令和參數是很有幫助的,高效使用命令行操作系統的關鍵是具備這樣一種能力:使用那些可用的資源迅速的找出你所需的參數(這些參數你並不記得)的技巧。下面的幾個小節將討論幾種不同的幫助資源。

the whatis command

一、顯示命令的簡短描述

二、使用的是每天晚上更新的資料庫

三、在新安裝后通常不能立即可用

$ whatis cal
cal (1) - displays a calendar

在你鑽研 RedHat Enterprise Linux system的過程序,你可能會不定期的遇到一些「難以理解的命令」; 這種情況就像你對某一個命令非常感興趣但又不完全能確定他的用途。當然一種可以知道這條命令的作用的方法就是去直接運行它,但你必須注意,這意味著你承擔著一定的風險。 whatis 命令提供了一種簡單安全的方法來了解另一個命令的用途。

whatis 接受另一個命令名作為它唯一的參數。然後,它在資料庫中搜尋這條命令的簡短描述。如果找到了匹配項,則把描述信息列印到你的屏幕上。隨描述信息一起,whatis 命令還會列印這條命令名和一個在圓括弧內的數字。這個數字指出了這個命令的詳細文檔在 linux manual的哪一個 「chapter」中可以找到。隨後的小節將更詳細的解釋linux manual 和相關的 man 命令。

whatis 命令使用的資料庫是每晚自動產生的(或自動更新)。這意味著新安裝的系統並不能立即使用 whatis 命令,因為資料庫並不存在。 如果你沒有耐心等待它自動產生(更新)資料庫, 那麼你可以要求管理員以root身份登入並運行 makewhatis 命令。

the --help option

一、顯示用法概要和參數列表

二、可以被大多數命令使用,但不是所有命令都支持

$ date --help
Usage: date [OPTION]... [+FORMAT] or:
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
Display the current time in the given FORMAT,
or set the system date.
...參數列表省略...

僅僅知道某一個命令的用途往往是不夠的。為了有效的使用命令,你需要它可以接受哪些選項和參數,並且這些參數應該遵循什麼順序(也就是這個命令的語法)。 大多數的命令都有一個 --help 選項。 這個選項可以輸出此命令的用途,用法,語法和它可以接受的選項列表以及這些選項的作用。

初一看,用法語句可能看上去很複雜而且可讀性差。然而,一旦你熟悉了一些基本的約定后就會很容易的理解它:

1. 任何在方括弧 [] 內的都是可選項
2. 任何後面有省略號 ... 的都表示可以隨意重複
3. 如果多個選項以管道符號 | 分隔,則表示你只能選擇它們中的一個
4. 在尖括弧 <> 內的文本代表的是變數。 因此 表示你可以在此處輸入一個你要使用的文件名。有時,就像這個小節中的例子,這樣的變數也會簡單的全部用大寫字母表示。

那麼,來看看 date 命令用法的第一行

date [OPTION]...[+FORMAT]

我們可以看到,date 可以接受可選數量的選項列表([OPTION]...),後面跟隨可選的格式化字元串,並且前面使用一個前綴 + , 這個字元串定義了你期望的 date 的輸出格式 ([+FORMAT])。所有的這些都是可選的,即使你不給出任何選項和參數,date也可以正常執行(它將以默認格式輸出當前的日期和時間)。

reading usage summaries

一、使用 --help , man 和其它方式輸出

二、用於描述某一個命令的語法

1. 在 [] 內的參數是可選的
2. 大寫 或在 <> 內的參數是變數
3. 後面有 ... 的表示可重複的列表
4. x|y|z 表示只能是 x 或 y 或 z
5. -abc 表示 可能是 -a, -b 或者 -c 的任意組合。

the man command

一、提供命令的說明文檔

二、幾乎所有的命令都有 man 文檔

三、頁面以 「chapters」 的方式組織在一起

四、作為linux 手冊的集中參考

五、man []

redhat enterprise linux system中的幾乎每一個命令(也包括絕大部分的配置文件和各種開發庫),都有一個相關的 man page,提供了比 --help 選項更詳盡的說明文檔。man pages 通常包含下面討論的命令用法的幾個方面組成:
1. 命令名和命令用途的簡短描述 NAME
2. 用法概要,包括可用的選項 SYNOPSIS
3. 命令功能的詳細描述 DESCRIPTION
4. 命令選項的詳細描述 OPTIONS
5. 與這個命令相關的任何文件 FILES
6. 這個命令已知的BUG信息 BUGS
7.使用這個命令的一些示例 EXAMPLES
8.進一步的參考文檔 SEE ALSO

系統中集中的 man pages 被稱作 Linux manual。 linux manual被分成不同的section,每一個section覆蓋特定的主題,並且每一個man page 與這些section中一個準確的結合。這些section包括:

Manual sections

1.用戶命令 2.系統調用 3.庫調用 4.特殊文件 5.格式化文件 6.遊戲 7.雜項 8.管理命令

通常,linux命令,調用,文件是通過 名稱跟隨一個寫在圓括弧中的manual section number 來引用的。例如:passwd(1),可以通過命令 man 1 passwd 來訪問,代表passwd 這個用戶命令, 然而像 passwd(5), 代表/etc/passwd這個格式化的文件。

man 這個命令也有它自己的 man page。 man manual的section 7 包含上面提到的七種manual sectins:
man 7 man

navigating man page

一、當查看man page時
1. 可以通過方向鍵、PgUp、PgDn操作
2./text 用來搜索 text
3. n/N 搜索下一個或上一個匹配項
4. quits 退出

二、搜尋manual
1. man -k keyword 列出所有匹配的page
2. 使用的是 whatis 資料庫

知道如何高效的操作和搜尋man page 將會避免你走大量的彎路,並且使你成為更加高效的linux用戶。在man page中搜尋文本,只需簡單的輸入一個正斜杠(/),後面緊隨你要搜尋的條目然後回車即可。你將會看到所搜尋的文本被高亮顯示,並且游標停留在第一個匹配項處。通過按 n和N 可以在下一個和前一個匹配項間移動。如果你使用完了man ,按下 q 鍵即可退出。後面的課程中你將會學習到一個叫作 less 的命令,它可以一次顯示一頁並可用於操作龐大的文本,你會發現它使用和此處介紹的同樣的移動和搜索命令。 這並不是巧合,當你查看一個man page時,man 命令直接使用less命令顯示page。

如果你不知道你要查看的命令的命令名怎麼辦呢?你可以使用搜索關鍵字,來列出簡短描述中匹配指定關鍵字的所有命令,使用 man 命令的 -k 選項即可。注意,它使用的是 whatis 資料庫,所以在新安裝后並不能立即可用。

the info command

一、類似man ,但通常更深入

二、直接運行 info 命令不帶任何參數將列出所有 page

三、info pages 類似網站的方式組織在一起
1.每一個頁面被分配到一個"nodes"
2.可以鏈接的nodes前面有一個*號
3. info [command]

大多數的命令,尤其是GNU工具,都提供info page作為補充,而且有些取代了man page。然而man pages通常是作為一個快速參考,相對於通篇介紹命令,info page通常更冗長和詳細(儘管有時僅僅是複製man page相同的內容)。

info page的結構類似於網站。當一個命令的info page被打開后,讀者被置於這個info page的 top node。這個top node通常包括對此命令用途的概述和一個主目錄。這個目錄里的每一個條目可以鏈接到這個頁面的另一個node。鏈接通過前面的星號(*)指示出來。

如果你不給出任何參數運行 info 命令,它將列出一個鏈接到所有可用info page的top node的列表。

navigating info pages

一、當查看一個info page時
1.可以通過方向鍵、PgUp、PgDn來操作
2.Tab鍵移動到下一個鏈接
3.回車進入一個選中的鏈接
4.n/p/u/l 進入 下一個/前一個/上一級/最近的一個 node
5.s text 搜尋text(默認:last search)
6. q 退出info

在info page中要進入一個鏈接,只需簡單的將游標移到它上面然後回車即可。你可以使用方向鍵或Tab鍵在鏈接間移動。在屏幕的頂部,你可以看到一些文本,指出了你當前的node,下一個和上一個node以及它的直接上一級node。你可以通過 n,p或者u 鍵在它們之間切換。

在當前node中搜尋文本,先按 s 鍵,然後輸入你要搜尋的文本,回車即可。下次你再按下s鍵時,你會發現你上次搜尋的條目默認被選擇了,所以要繼續搜尋的話只需簡單的按回車。如果你更習慣使用man裡面的操作按鍵,像 /, n和N,你可以使用vi-keys參數啟動info。

extended documentation

一、/usr/share/doc目錄
1.子目錄是大多數已安裝的包的
2.文檔的位置不適合放在其它地方
配置文件模板
HTML/PDF/PS文檔
許可證詳細信息

應用程序通常包含一些文檔,這些文檔可能不適合man 或 info 所使用的長度和格式。這些文檔通常就像軟體許可證的複本,也包括配置文件的模板,嚮導甚至一整本書用於擴展應用程序文檔。


red hat documentation

一、可以在 http://www.redhat.com/docs/上找到
1.安裝指南
2.部署指南
3.虛擬化指南

二、知識庫: http://kbase.redhat.com/
1.常見問題和解決方法

三、部署指南
1.System-->Documentation-->Deployment Guide
2.yelp ghelp:Deployment_Guide

redhat 提供了額外的文檔,遠超過單一應用程序提供的。這些文檔以多種格式可以從http://www.redhat.com/docs/得到。

這些文檔覆蓋了從介紹到高級水平的一系列主題。不像Internet上常見的文檔,這些是專門針對Red Hat Enterprise Linux而寫的。

一些來自於redhat的文檔也通過Deployment_Guide-*這個軟體包提供。(這個軟體包以不同的語言提供;例如,Deployment_Guide-en-US是US English的版本。)通過 System-->Documentation-->Deployment Guide 或者使用 yelp 命令可以查看這個 XML 格式的文檔。

[student@stationX ~]$ yelp ghelp:Deployment_Guide

[火星人 ] rhce033--lecture3已經有365次圍觀

http://coctec.com/docs/linux/show-post-142520.html