Linux 檔案命令精通指南 一

2021-08-22 14:05:18 字數 2405 閱讀 6650

雖然 gui 桌面(如 kde 和 gnome)能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。

這篇文章是關於 linux 檔案命令的乙個「速成教程」,它是為那些剛接觸這個作業系統或者只是需要補充這方面知識的使用者提供的。它包含了對一些更有用的命令的乙個簡明的概述以及關 於它們的最強大的應用的指導。下面包含的資訊 — 結合一些實驗 — 將使您能夠容易地掌握這些基本的命令。(注意:當涉及到乙個與 oracle 集群檔案系統 (ocfs) 結合的核心時,這些命令中的某些命令的行為可能會稍微有所不同。在此情況下,oracle 提供了乙個 ocfs 工具集,該工具集可以為檔案命令應用提供乙個更好的選擇。)

注意,這裡包含的所有示例都在 suse linux 8.0 professional 上進行了測試。雖然沒有理由相信它們在其它的系統上將不能工作,但如果出現問題,您應當檢視您的文件,以了解可能的變化。

背景概念

在深入研究規範之前,讓我們回顧一些基礎知識。

檔案和命令

在 linux/unix 作業系統中,所有事物都被當作檔案來處理:硬體裝置(包括鍵盤和終端)、目錄、命令本身,當然還有檔案。這個奇怪的慣例實際上是 linux/unix 的能力和靈活性的基礎。

大多數(幾乎是全部)的命令形式如下:

command [option] [source file(s)] [target file]

獲取幫助

$ whatis echo

$ man echo

如果您不知道某個特殊任務所需的命令,您可以用 man -k (也稱為 apropos)和乙個主題來生成可能的命令。例如:

$ man -k files

乙個很有用但常常被忽視的命令可以提供關於使用 man 本身的資訊:

$ man man

您可以用 spacebar 來瀏覽任意的 man 頁面;up arrow 將向上翻滾檔案。.要退出,則輸入 q,!,或 ctrl-z。

使用者類別

記得那句名言「所有動物一例平等但有些動物比其他動物更加平等」嗎?在 linux 世界中,根使用者掌管一切。

根使用者可以以另乙個使用者名稱 su (源自 "superuser")登入。要執行諸如新增乙個新使用者、印表機或檔案系統之類的任務,必須作為根使用者登入或者用 su 命令和根使用者密碼切換到超級使用者。系統檔案(包括控制初始化過程的系統檔案)歸根使用者所有。雖然可能允許普通使用者對它們進行讀操作,但出於系統安全性的原 因,編輯的權利將留給根使用者。

bash shell

雖然提供了其它的 shell,但 bash (bourne again shell) 是 linux 的預設 shell。它結合了與它同名的 bourne shell 的特性和 korn、c 和 tcsh shell 的特性。

bash 內建的命令 history 預設記錄最後輸入的 500 條命令。可以通過在命令提示符下輸入 history 來檢視它們。要檢索某個特定的命令,可以在命令提示符下按 up arrow 或 down arrow,或在歷史列表中輸入它的編號,並在編號前面加上 "!",例如:

$ !49

您還可以通過一條命令在歷史列表中離位置最靠前的專案的距離來執行該命令:如果在歷史列表中有 53 個事件,$ !-3 將執行事件號 51。

像 unix/linux 世界的其它 shell 一樣,bash 使用了特殊的環境變數來方便系統管理。例如:

home,使用者主目錄path,linux 用來搜尋您輸入的命令的可執行映象的搜尋路徑histsize,系統儲存的歷史事件的數量

除了這些保留的關鍵字之外,您還可以定義您自己的環境變數。例如,oracle 使用 oracle_home (還有其它一些變數),要使 oracle 安裝成功完成,必須在您的環境中設定這些變數。

可以在提示符下臨時設定變數:

$histsize=100

或者,在 /etc/profile (需要根使用者許可權)中進行系統範圍的永久設定,或在 .profile 中進行區域性永久設定。

可以通過 echo 命令,並用乙個 $ 符號來訪問乙個環境變數的值,進而檢視該值。

$ echo $home

/home/bluher

可以用 env 命令來檢視當前所有的環境變數。

正規表示式和萬用字元

許多 linux 命令使用萬用字元 * 和 ? 來匹配任意數量的字元或分別匹配任意的單個字元;正則模式匹配表示式利用乙個句點 (.) 來匹配除「換行符」之外的任意單個字元。這兩種情況下都使用方括號 ([ ]) 來匹配除「*」號之外的字元組。不過,* 號在各種情況下有類似但不同的意義:雖然它在 shell 中將匹配乙個或更多的字元,但在正規表示式中,它匹配上述字元的零個或更多的例項。一些命令(如 egrep 和 awk)使用了一組更廣泛的特殊字元來進行模式匹配。

Linux 檔案命令精通指南

雖然 gui 桌面 如 kde 和 gnome 能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。這篇文章是關於 linux 檔案命令的乙個 速成教程 它是為...

Linux 檔案命令精通指南 上

在深入研究規範之前,讓我們回顧一些基礎知識。檔案和命令 在 linux unix 作業系統中,所有事物都被當作檔案來處理 硬體裝置 包括鍵盤和終端 目錄 命令本身,當然還有檔案。這個奇怪的慣例實際上是 linux unix 的能力和靈活性的基礎。大多數 幾乎是全部 的命令形式如下 command o...

Linux 系統命令精通指南

by lanf,出處 雖然 gui 桌面 如 kde 和 gnome 能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。這篇文章是關於 linux 檔案命令的...