欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Linux 文件命令精通指南
Linux 文件命令精通指南
作者:Sheryl Calish
為剛接觸 Linux 文件命令的初學(xué)者提供的速成教程
雖然 GUI 桌面(如 KDE 和 GNOME)能夠幫助用戶(hù)利用 Linux 特性,而無(wú)需關(guān)于命令行接口的功能知識,但還是經(jīng)常會(huì )需要更多的功能和靈活性。而且,基本熟悉這些命令對于在 shell 腳本中正確地使某些功能自動(dòng)化仍然是必需的。
這篇文章是關(guān)于 Linux 文件命令的一個(gè)“速成教程”,它是為那些剛接觸這個(gè)操作系統或者只是需要補充這方面知識的用戶(hù)提供的。它包含了對一些更有用的命令的一個(gè)簡(jiǎn)明的概述以及關(guān)于它們的最強大的應用的指導。下面包含的信息 — 結合一些實(shí)驗 — 將使您能夠容易地掌握這些基本的命令。(注意:當涉及到一個(gè)與 Oracle 集群文件系統 (OCFS) 結合的內核時(shí),這些命令中的某些命令的行為可能會(huì )稍微有所不同。在此情況下,Oracle 提供了一個(gè) OCFS 工具集,該工具集可以為文件命令應用提供一個(gè)更好的選擇。)
注意,這里包含的所有示例都在 SUSE Linux 8.0 Professional 上進(jìn)行了測試。雖然沒(méi)有理由相信它們在其它的系統上將不能工作,但如果出現問(wèn)題,您應當查看您的文檔,以了解可能的變化。
背景概念
在深入研究規范之前,讓我們回顧一些基礎知識。
文件和命令
在 Linux/UNIX 操作系統中,所有事物都被當作文件來(lái)處理:硬件設備(包括鍵盤(pán)和終端)、目錄、命令本身,當然還有文件。這個(gè)奇怪的慣例實(shí)際上是 Linux/UNIX 的能力和靈活性的基礎。
大多數(幾乎是全部)的命令形式如下:

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

獲取幫助
最有用的命令之一是那些提供幫助的命令(特別是對那些學(xué)習 Linux 的人而言)。Linux 中的兩個(gè)重要的信息來(lái)源是聯(lián)機參考手冊,或 man 頁(yè)面和 whatis 工具。您可以用 whatis 命令來(lái)訪(fǎng)問(wèn)一個(gè)不熟悉的命令的 man 頁(yè)面。

$ whatis echo

要了解關(guān)于這個(gè)命令的更多信息,可以使用:

$ man  echo

如果您不知道某個(gè)特殊任務(wù)所需的命令,您可以用 man -k (也稱(chēng)為 apropos)和一個(gè)主題來(lái)生成可能的命令。例如:

$ man -k files

一個(gè)很有用但常常被忽視的命令可以提供關(guān)于使用 man 本身的信息:

$ man man

您可以用 SPACEBAR 來(lái)瀏覽任意的 man 頁(yè)面;UP ARROW 將向上翻滾文件。.要退出,則輸入 q,!,或 CTRL-Z。
用戶(hù)類(lèi)別
記得那句名言“所有動(dòng)物一例平等但有些動(dòng)物比其他動(dòng)物更加平等”嗎?在 Linux 世界中,根用戶(hù)掌管一切。
根用戶(hù)可以以另一個(gè)用戶(hù)名 su (源自 "superuser")登錄。要執行諸如添加一個(gè)新用戶(hù)、打印機或文件系統之類(lèi)的任務(wù),必須作為根用戶(hù)登錄或者用 su 命令和根用戶(hù)密碼切換到超級用戶(hù)。系統文件(包括控制初始化過(guò)程的系統文件)歸根用戶(hù)所有。雖然可能允許普通用戶(hù)對它們進(jìn)行讀操作,但出于系統安全性的原因,編輯的權利將留給根用戶(hù)。
BASH shell
雖然提供了其它的 shell,但 BASH (Bourne Again Shell) 是 Linux 的默認 shell。它結合了與它同名的 Bourne shell 的特性和 Korn、C 和 TCSH shell 的特性。
BASH 內置的命令 history 默認記錄最后輸入的 500 條命令??梢酝ㄟ^(guò)在命令提示符下輸入 history 來(lái)查看它們。要檢索某個(gè)特定的命令,可以在命令提示符下按 UP ARROW 或 DOWN ARROW,或在歷史列表中輸入它的編號,并在編號前面加上 "!",例如:

$ !49

您還可以通過(guò)一條命令在歷史列表中離位置最靠前的項目的距離來(lái)執行該命令:如果在歷史列表中有 53 個(gè)事件,$ !-3 將執行事件號 51。
像 UNIX/Linux 世界的其它 shell 一樣,BASH 使用了特殊的環(huán)境變量來(lái)方便系統管理。例如:

HOME,用戶(hù)主目錄
PATH,Linux 用來(lái)搜索您輸入的命令的可執行鏡像的搜索路徑
HISTSIZE,系統保存的歷史事件的數量
除了這些保留的關(guān)鍵字之外,您還可以定義您自己的環(huán)境變量。例如,Oracle 使用 ORACLE_HOME (還有其它一些變量),要使 Oracle 安裝成功完成,必須在您的環(huán)境中設置這些變量。
可以在提示符下臨時(shí)設置變量:

$HISTSIZE=100

或者,在 /etc/profile (需要根用戶(hù)權限)中進(jìn)行系統范圍的永久設置,或在 .profile 中進(jìn)行局部永久設置。
可以通過(guò) echo 命令,并用一個(gè) $ 符號來(lái)訪(fǎng)問(wèn)一個(gè)環(huán)境變量的值,進(jìn)而查看該值。

 
$ echo $HOME
/home/bluher

可以用 env 命令來(lái)查看當前所有的環(huán)境變量。
正則表達式和通配符
許多 Linux 命令使用通配符 * 和 ? 來(lái)匹配任意數量的字符或分別匹配任意的單個(gè)字符;正則模式匹配表達式利用一個(gè)句點(diǎn) (.) 來(lái)匹配除“換行符”之外的任意單個(gè)字符。這兩種情況下都使用方括號 ([ ]) 來(lái)匹配除“*”號之外的字符組。不過(guò),* 號在各種情況下有類(lèi)似但不同的意義:雖然它在 shell 中將匹配一個(gè)或更多的字符,但在正則表達式中,它匹配上述字符的零個(gè)或更多的實(shí)例。一些命令(如 egrep 和 awk)使用了一組更廣泛的特殊字符來(lái)進(jìn)行模式匹配。
文件處理命令
剖析一個(gè)文件列表
ls 命令用來(lái)查看用戶(hù)有執行權限的任意目錄中的文件列表,該命令有許多有趣的選項。例如:

$ ls -liah *
22684 -rw-r--r--    1 bluher   users         952 Dec 28 18:43 .profile
19942 -rw-r--r--    1 scalish  users          30 Jan  3 20:00 test2.out
925 -rwxr-xr-x    1 scalish  users         378 Sep  2  2002 test.sh

上面的列表顯示 8 列:

第 1 列指示文件的 inode,因為我們使用了 -i 選項。剩下的列通過(guò) -l 選項來(lái)進(jìn)行正常顯示。
第 2 列顯示文件類(lèi)型和文件訪(fǎng)問(wèn)權限。
第3 列顯示鏈接數,包括目錄。
第 4 和第 5 列顯示文件的所有者和組所有者。這里,所有者 "bluher" 屬于組 "users"。
第 6 列顯示文件大?。▎挝粸樗@示的單位,而不是默認的字節數,因為我們使用了 -h 選項。
第 7 列顯示日期(它看起來(lái)像是三列),包括月、日和年,以及當天的時(shí)間。
第 8 列顯示文件名。在選項列表中使用 -a 將使列表中包含隱藏文件(如 .profile)的列表。
處理文件
可以移動(dòng) (mv)、復制 (cp) 或刪除 (rm) 文件和目錄。明智地使用 -i 選項,以獲得確認通常是個(gè)不錯的主意。

$ cp -i ls.out ls2.out
cp:overwrite `ls2.out‘?

mv 命令允許使用 -b 選項,這將在移動(dòng)文件之前作一個(gè)備份拷貝。rm 和 cp 接受功能強大但卻危險的 -r 選項,它將在一個(gè)目錄和它的文件上遞歸執行。

$ rm -ir Test
rm:descend into directory `Test‘? y

可以用 mkdir 來(lái)創(chuàng )建目錄,用 rmdir 來(lái)刪除目錄。不過(guò),因為不能用 rmdir 來(lái)刪除包含文件的目錄,所以使用 rm 加 -r 選項通常要更方便些。
出于安全的原因,所有的文件都有所有權和保護。文件訪(fǎng)問(wèn)權限(或文件模式)包含之前提到的相同的 10 個(gè)字符:

第一個(gè)字符指示文件類(lèi)型。最常見(jiàn)的是 - 代表文件,d 代表目錄,而 l 代表鏈接。
接下來(lái)的 9 個(gè)字符是三種用戶(hù)類(lèi)別的訪(fǎng)問(wèn)權限:文件所有者(字符 2-4),用戶(hù)組 (5-7) 和其它 (8-10),其中 r 表示讀權限,w 表示寫(xiě)權限,x 指示一個(gè)文件上的執行權限。破折號 - 如果出現在這九個(gè)位置的任意一個(gè),則指示這個(gè)操作對該類(lèi)別的用戶(hù)禁止。
可以使用 chmod 命令通過(guò)字符符號或二進(jìn)制掩碼來(lái)設置訪(fǎng)問(wèn)權限。要使用二進(jìn)制掩碼,必須將三個(gè)權限組的字符表示轉換成二進(jìn)制格式,然后轉換成八進(jìn)制格式:
用戶(hù)類(lèi)別: 所有者 用戶(hù)組 其它
字符表示: rwx r-x r--
二進(jìn)制表示: 111 101 100
八進(jìn)制表示: 7 5 4
 
 
 
 
 

將寫(xiě)權限賦予用戶(hù)組,您可以使用:

chmod g+w test.sh or chmod 774 test.sh

用 umask 命令,在 /etc/init.dev 文件中進(jìn)行系統范圍內的、或在 .profile 文件中進(jìn)行的本地的文件權限默認設置。這個(gè)命令指示用 777 減去這個(gè)數字來(lái)獲取默認的權限:

$ umask 022

這將為用戶(hù)創(chuàng )建的所有新文件生成一個(gè)默認的文件權限 755。
可以用 chown 來(lái)修改文件的所有權:

$ chown bluher ls.out

這里,bluher 是新的文件所有者。類(lèi)似地,組成員資格將按以下方式修改:

$ chgrp devgrp ls.out

這里,devgrp 是新的用戶(hù)組。
ls 不提供哪些文件是文本的,哪些文件是二進(jìn)制的的信息。要了解這個(gè)信息,您可以使用 file * 命令。
重命名文件
賦予一個(gè)文件多個(gè)名字的兩種流行的方法是利用鏈接和 alias 命令。Alias 可以用來(lái)為一個(gè)更長(cháng)的命令重新起一個(gè)更方便的名字:

$ alias ll=‘ls -l‘
$ ll

注意單引號的使用,這使得 BASH 將該項目傳遞給別名,而不是自己估計它。別名還可用作較長(cháng)的路徑名的縮寫(xiě):

$ alias jdev9i=/jdev9i/jdev/bin/jdev

關(guān)于 alias 和它的反命令 unalias 的更多信息,請查看 BASH 的 man 頁(yè)面的 "SHELL BUILTIN COMMANDS" 子部分。在最后一個(gè)例子中,定義了一個(gè)環(huán)境變量來(lái)實(shí)現相同的結果。

$ export JDEV_HOME=/jdev9i/jdev/bin/jdev
$ echo $JDEV_HOME
/jdev9i/jdev/bin/jdev
$ $JDEV_HOME

鏈接允許幾個(gè)文件名引用單個(gè)源文件,格式如下:

 
ln [-s] fileyouwanttolinkto newname

單獨的 ln 命令創(chuàng )建到文件的一個(gè)硬鏈接,而使用 -s 選項來(lái)創(chuàng )建一個(gè)符號鏈接。簡(jiǎn)而言之,一個(gè)硬鏈接幾乎不能和原始的文件區分開(kāi)(除了這兩個(gè)文件的 inode 將相同之外)。符號鏈接較容易區分,因為它們出現在一個(gè)長(cháng)的文件列表中,并用 -> 來(lái)指示源文件,l 指示文件類(lèi)型。
查看和查找文件
文件過(guò)濾器
用來(lái)讀取文件內容和在文件內容上執行操作的命令有時(shí)被稱(chēng)為 1y濾器。sed 和 awk 命令是兩個(gè)濾波器的例子,因為在以前的 OTN 文章中有它們詳細的討論,在這里將略過(guò)。
諸如 cat、 more 和 less 之類(lèi)的命令讓您能夠從命令行查看一個(gè)文本文件的內容,而無(wú)需調用編輯器。Cat 是 "concatenate" 的縮寫(xiě),它將默認地在標準輸出(顯示屏)上顯示文件內容。和 cat 一起提供的最有趣的選項之一是 -n 選項,它用編號的輸出行來(lái)顯示文件內容。

$ cat -n test.out
1  This is a test.

因為 cat 一次性輸出文件中的所有行,所以您可能更喜歡用 more 和 less,因為它們都一次輸出一屏的文件內容。Less 是 more 的一個(gè)增強的版本,它允許用來(lái)自 vi 文本編輯器的關(guān)鍵命令來(lái)增強文件查看。例如,d 向前翻滾、b 向后翻滾 N 行(如果 N 是在 d 或 b 之前指定的)。為 N 輸入的值成為隨后的 d 命令的默認值。man 頁(yè)面實(shí)用工具使用 less 來(lái)顯示使用說(shuō)明的內容。
重定向和管道
重定向允許將命令輸出重定向到文件中,而不是標準輸出,或者類(lèi)似地,也可重定向輸入。重定向的標準符號 > 創(chuàng )建一個(gè)新的文件。>> 符號將輸出添加到一個(gè)現有的文件中:

$ more test2.out
Another test.
$ cat test.out >> test2.out
$ cat test2.out
Another test.
This is a test.

到文件的標準輸入可以用 < 符號來(lái)重定向:

$ cat < test2.out

錯誤消息用 2> 和 2>> 來(lái)重定向和添加,格式如下:

$ command 2> name_of_error_file

要避免無(wú)意地覆蓋一個(gè)現有的文件,使用 BASH 內置的命令集:

$ set -o noclobber

可以在命令和輸出文件之間用 >! 符號來(lái)重載這個(gè)特性。要關(guān)閉這個(gè)特性,用 +o 代替 -o。
重定向在一個(gè)命令和文件之間、或文件和文件之間工作。重定向語(yǔ)句的一項必須是一個(gè)文件。
管道使用 |符號,并且在命令之間工作。例如,您可以用以下方式將一個(gè)命令的輸出直接發(fā)送到打印機上:

$ ls -l * | lpr

可以用以下方式快速地找到歷史列表中的一個(gè)命令:

$ history | grep cat

更多的濾波器
Grep、fgrep 和 egrep 都顯示匹配一種模式的行。所有這三個(gè)命令都在文件中搜索指定的模式,如果您想不起來(lái)一個(gè)所需文件的名稱(chēng),這將非常有用?;靖袷绞牵?

grep [options] PATTERN [FILE...]
$ grep -r ‘Subject‘ nsmail

CTRL-Z 將終止上述或其它任何命令。
grep 的最有用的選項可能是 -s。如果您以除根用戶(hù)之外的任何身份搜索系統文件,那么對于每一個(gè)您沒(méi)有訪(fǎng)問(wèn)權限的文件,都將產(chǎn)生錯誤消息。這個(gè)命令禁止那些消息。
Fgrep(也以 grep -F 調用)只查找固定的字符串,而不是 grep 接收的正則表達式。而 egrep 接收包含更大范圍的特殊字符(如 “|”,它指示條件 OR 運算符)的模式。

$ egrep ‘Subject|mailto‘ *

查找文件
find 命令的 GNU 版本非常強大、靈活并且比 UNIX 系統上存在的經(jīng)典版本更具包容性。它對于涉及到目錄結構的任務(wù)非常有用,包括在文件上查找和執行命令。find 命令的基本格式是:

$ find startdirectory options matchcriteria [actionoptions]

如果您知道文件的名稱(chēng)、或者甚至名稱(chēng)的一部分,但不知道它所處的目錄,您可以這么做:

$ find .-name ‘test*‘
./test
./jdevhome/mywork/EmpWS/EmpBC4J/test

與經(jīng)典的 UNIX 系統不同,在 Linux 中不需要在末尾添加 -print 操作,因為如果沒(méi)有指定其它的操作選項,就將假定執行這個(gè)操作。在目錄起始位置上的一個(gè)點(diǎn) ( . ) 將使 find 在您的工作目錄中開(kāi)始搜索。兩個(gè)點(diǎn), ..,在父目錄中開(kāi)始搜索。您可以在任意目錄下開(kāi)始搜索。
注意,您可以使用通配符作為搜索準則的一部分(只要用單引號將整個(gè)項目括起來(lái))。

$ find .-name ‘test*‘ -print
./test.out
./test2.out

顯示擁有 .out 擴展名的一系列文件:

$ find /home -name ‘*.out‘

不過(guò)記住,除非您是作為超級用戶(hù)運行這個(gè)命令,否則您將可能得到許多的 "Permission denied" 錯誤消息。
最強大的搜索工具之一是和 grep 一起使用的 -exec 操作:

$ find .-name ‘*.html‘ -exec grep ‘mailto:foo@yahoo.com‘ {} \;

這里,我們讓 find 命令在當前目錄中開(kāi)始執行, 接下來(lái)的步驟
下載 Oracle Database 10g for Linux
訪(fǎng)問(wèn)并將 Linux 技術(shù)中心添加到收藏夾
 
.,查找一個(gè) html 文件,*.html,并在當前文件上執行 (-exec) grep 命令,{}。當使用 -exec 操作時(shí),需要一個(gè)分號 ;,這是用來(lái)在使用 find 命令時(shí)執行其它一些操作。需要反斜線(xiàn) \ 和引號來(lái)確保這些項目通過(guò) BASH,以使它們由命令而不是 shell 來(lái)進(jìn)行解釋。

立即掌握 Linux 文件命令
在 Linux 中提供了許多有用的命令和利用它們的強大的方法,在此無(wú)法一一說(shuō)明。此外,完成許多任務(wù)通常都存在多種方法。
我們已經(jīng)看到了一些最常用和最有啟發(fā)意義的 Linux 文件命令。掌握這些基礎但卻關(guān)鍵的工具將使您的 Linux 學(xué)習走上快車(chē)道。利用您手頭上的 man 頁(yè)面,和試驗的積極性,您現在擁有了足夠的信息來(lái)開(kāi)始探索 Linux 文件操作的力量。
在我的下一篇文章中,我將提供 Linux 系統命令的一個(gè)類(lèi)似的說(shuō)明。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Linux用ls和grep統計文件個(gè)數
linux grep正則表達式與grep用法詳解
linux命令后臺運行
Linux 系統命令精通指南
linux常用命令及參數詳解
《shell編程指南》讀書(shū)筆記(三)——文本處理(正則表達式,grep,awk,sed)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久