<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Thinking in XiaoQiang
    世人皆有悲哀,只有你不明白
    posts - 56,comments - 150,trackbacks - 0
    Linux 控制臺快速指南

    Chris Walden
    電子商務架構師, IBM Developer Relations
    2004 年 1 月

    Column iconIBM 電子商務架構師 Chris Walden 將通過他在 developerWorks 上發表的九篇系列文章來指導您如何在 Linux 環境中運用您的 Windows 操作技巧。本部分將介紹各種不同的 shell 和一些最基本的 Linux 命令。

    Linux 中的所有管理任務都可以在控制臺中完成。許多情況下,使用控制臺比使用圖形化的程序更快捷,而且還可能實現額外的功能。不僅如此,所有的控制臺任務都可以寫到腳本中,這樣就可以自動執行。為了真正地駕馭您的 Linux 環境,您將希望掌握如何在控制臺中工作。如果您曾經使用過 DOS/Windows,本文將引導您開始使用 Linux 控制臺。

    進入控制臺
    如果您的系統引導進入文本模式(為了降低服務開銷,服務器通常是這樣配置的),那么您在以文本形式登錄后就已經在控制臺中了。在典型的 Linux 系統中,通過組合鍵 Ctrl + Alt + (F1 - F6) 您可以切換到另外的控制臺。每一個控制臺是系統中一個完全獨立的會話,不同的用戶可以同時使用。

    這一多控制臺的特點與 Windows 中的多桌面不同。在 Linux 中,每一個控制臺可以分別由完全不同的用戶來控制。例如,您可能在控制臺 1 中以 root身份登錄,而在控制臺 2 中以 joeuser 身份登錄。兩個控制臺在各自的用戶空間中運行不同的程序。與此類似,不同的用戶可以遠程登錄到同一個 Windows 系統中。就這一點來說,Linux 更像是主機而不是簡單的服務器或工作站。

    如果您是在圖形模式下,那么您可以打開一個 終端 (terminal)以進入控制臺窗口。通常在桌面的任務條上會有終端的按鈕。您也可以從上下文菜單(在桌面上單擊右鍵)打開終端 。

    命令
    在控制臺中可以使用的命令很多。其中有一些實際上只在編寫腳本時才會用到。這里介紹一些您最可能用到的命令。不要忘記,所有的命令和選項都區分大小寫。 -R-r不同,會去執行不同的操作。控制臺命令幾乎全都是小寫的。

    cd
    使用我們所熟悉的 cd 命令可以在目錄間切換。一定注意的是在 Linux 中用的是正斜杠 (/),而不是您所熟悉的反斜杠 (\)。反斜杠也用到了,但只是用來說明命令需要換行繼續,這樣可以提高比較長的命令的可讀性。

    ls
    ls 命令用于列出一個目錄下的所有文件??梢允褂迷S多不同的開關更改列表的表示形式:

    列出文件
    ls -l 以長格式列出文件,包括文件大小、日期和時間、屬性
    ls -t 對文件以時間排序
    ls -S 對文件以大小排序
    ls -r 與一個排序開關組合起來使用,逆序排列。 ls -t 將最新的文件顯示在列表的頂部。 ls -t 將最新的文件顯示在底部。
    ls -h 易讀格式。使用 k、M、G 等來標識文件的大小,而不是以字節為單位。
    ls -a 顯示目錄中所有的文件,包括隱藏文件

    cp
    使用 cp 命令來復制文件。這個命令與 DOS 下的 copy 命令基本一樣?;镜拈_關如下:

    復制文件
    cp -R 遞歸地復制文件;當需要復制整個目錄時會用到
    cp -f 強制復制并覆蓋已有的文件,不詢問用戶
    cp -l 鏈接文件,而不是復制;見下面的說明

    使用復制命令創建鏈接
    cp 命令可以創建指向一個文件或者整個文件結構的硬鏈接。使用 -l 開關來指明操作是鏈接復制。所有的目錄仍作為目錄創建,但所有的文件會被設置為硬鏈接。

    cp -lR /data/accounting/payroll /data/management/hr

    上面的命令將把整個目錄結構及其下面的文件從 /data/accounting/payroll 復制到 /data/management/hr/payroll。目錄結構下的所有文件將被設置為硬鏈接。這樣使一個文件在同一個文件系統中可以具備不同的視圖。這也是有用的安全技術,使得在不同的目錄下對同一文件有不同的訪問權限。

    mv
    使用 mv 命令來移動和重命名文件。這個命令的工作方式基本上與 DOS 中的 move 命令一樣,不過它可以移動整個目錄結構及所有文件。

    cat
    使用 cat 命令來查看文件的內容。它相當于 DOS 中的 type 命令。它將把文件的內容轉儲到另一個文件、屏幕或者其他命令。 cat 是concatenate 的簡寫,還可以將一系列的文件合并為一個大文件。

    more
    使用命令 more 可以以分頁的方式查看文件。它基本上與 DOS 中的 more 命令相同。

    less
    less 命令也是用來查看文件,但是它支持上下滾屏以及在文檔中進行文本搜索。

    vi
    有一些人可能會說 vi 表示“virtually impossible”。它是 Unix 中的一個歷史悠久的文本編輯器。 vi 并不真正直觀,但是現在幾乎所有的類 Unix 環境中都有 vi 。對于 Linux 中安裝的版本有一個內置的教程,一旦您熟悉了 vi ,只需幾次擊鍵就可以完成不可思議的任務。說實話,沒有任何編輯器能夠取代 vi 來編輯密碼和配置文件。

    man
    使用 man 命令來查看命令的文檔。man 是 manual 的縮寫。幾乎每一個命令都有相應的文檔。要深入了解 man ,請輸入以下命令:

    man man

    info
    info 命令與 man 命令類似,不過它提供了超鏈接文本,可以更方便地瀏覽文檔。

    哪個 shell?
    DOS/Windows 與 Linux 的最重要的區別之一是 Linux 的命令 shell 是與操作系統相分離的一層。不同的 shell 環境影響您具備不同的功能,比如可編輯的命令行和歷史命令回查等。shell 還決定了腳本中函數的語法。在 DOS/Windows 中,編寫腳本程序只有一種情況,那就是使用效率低下的 .BAT 文件。它的確可以完成很多功能,但除了完成那些基本的任務,復雜些的任務就需要腳本編寫者具有極強的創造性。在 Linux 中,腳本中可以有循環,不僅可以執行基本的條件語句,很多在編程語言中才有的功能它都具備。如果您擅長編寫 .BAT 文件,那么 shell 腳本更會使您大展才華。

    默認的 shell 是每個用戶帳號的一個參數。Linux 中典型的默認 shell 是 /bin/bash,不過也可以用其他的 shell。每個 shell 的 man 文檔實際上都非常好,都對各種 shell 及其使用進行了詳細的說明。僅僅閱讀下面的解釋是不夠的,應該從下面列出的 shell 中選擇一個,去查看它的 man 文檔。

    bash
    bash shell 是 Bourne shell 的一個免費版本,它是最早的 Unix shell,包括許多附加的特點。Bash 有可編輯的命令行,可以回查歷史命令,支持 tab 鍵補齊以使用戶避免輸入長的文件名。

    csh
    C shell 使用的是“類C”語法,借鑒了 Bourne shell 的許多特點,只是內部 shell 命令集有所不同。

    ksh
    Korn shell 的語法與 Bourne shell 相同,同時具備了 C shell 的易用特點。許多安裝腳本都使用 ksh ,即使您不把它作為您的主 shell,您也應該在系統中安裝它。

    tcsh
    TC shell 是 C shell 的一個增強版本,與 C shell 完全兼容。

    zsh
    Z shell 是 Korn shell 的一個增強版本,具備 bash shell 的許多特色。

    Shell 規則
    您只需在控制臺中執行相應的命令就可以隨時切換 shell。只要在文件頂部放置一個井號 (#!) 指向需要的 shell,腳本就可以指定想要運行的 shell。當腳本運行的時候,不管用戶所處的 shell 環境是什么,它都會在正確的 shell 環境中運行。下面例子中的這行代碼指出腳本需要在 C shell 下運行:

    #!/bin/csh

    給我做鏈接,這樣就更安全!

    Linux 文件系統最重要的特點之一是它的文件鏈接。鏈接是對文件的引用,這樣您可以讓文件在文件系統中多處被看到。不過,在 Linux 中,鏈接可以如同原始文件一樣來對待。鏈接可以與普通的文件一樣被執行、編輯和訪問。對系統中的其他應用程序而言,鏈接就是它所對應的原始文件。當您通過鏈接對文件進行編輯時,您編輯的實際上是原始文件。鏈接不是副本。有兩種類型的鏈接:硬鏈接和符號鏈接。

    硬鏈接只能引用同一文件系統中的文件。它引用的是文件在文件系統中的物理索引(也稱為 inode)。當您移動或刪除原始文件時,硬鏈接不會被破壞,因為它所引用的是文件的物理數據而不是文件在文件結構中的位置。硬鏈接的文件不需要用戶有訪問原始文件的權限,也不會顯示原始文件的位置,這樣有助于文件的安全。如果您刪除的文件有相應的硬鏈接,那么這個文件依然會保留,直到所有對它的引用都被刪除。

    符號鏈接是一個指針,指向文件在文件系統中的位置。符號鏈接可以跨文件系統,甚至可以指向遠程文件系統中的文件。符號鏈接只是指明了原始文件的位置,用戶需要對原始文件的位置有訪問權限才可以使用鏈接。如果原始文件被刪除,所有指向它的符號鏈接也就都被破壞了。它們會指向文件系統中并不存在的一個位置。

    兩種鏈接都可以通過命令 ln <source> <target> 來創建。 ln 默認創建的是硬鏈接。使用 -s 開關可以創建符號鏈接。

    
     # Create a hard link from MyFile in the current
              
     # directory to /YourDir/MyFile
              
    ln MyFile /YourDir
           
     # Create a symbolic (soft) link from MyFile in
              
    # the current directory to /YourDir/YourFile
    ln -s MyFile /YourDir/Yourfile

    在上面的例子中,MyFile、/YourDir/MyFile 和 /YourDir/Yourfile 會被看成是同一個文件。

    走出您的 shell
    對 Linux 管理來說,必須學習在控制臺環境下工作。雖然有一些工具可以讓您避免使用控制臺,但是您會受到那些工具的很多限制。進入控制臺很簡單,使用 maninfo 命令訪問命令文檔也很方便。

    參考資料

    關于作者
    Chris Walden 是位于德克薩斯州奧斯汀的 IBM Developer Relations Technical Consulting(也稱為 dragonslayers )的一名電子商務架構師,該公司為 IBM 商業伙伴提供教育、實現和咨詢。他致力于 Linux 相關工作,一有機會就向身邊的人宣傳 Linux 的種種好處。除了完成他的架構師的職責之外,他還精通 Linux 基礎設施服務器的各個領域,包括混合平臺用戶環境下的文件、打印以及其他應用服務等。Chris 有 10 年的計算機行業經驗,從現場支持到 Web 應用開發和顧問,各個領域他都曾涉足。您可以通過 cmwalden-at-us.ibm.com 與 Chris 聯系。
    posted on 2005-10-27 09:22 小強 閱讀(262) 評論(0)  編輯  收藏 所屬分類: Linux
    主站蜘蛛池模板: 免费人成在线视频| 久草免费在线观看视频| 亚洲另类精品xxxx人妖| 亚洲1区1区3区4区产品乱码芒果| 老司机69精品成免费视频| 成年美女黄网站色大免费视频 | 免费A级毛片无码久久版| 亚洲国产精品成人久久| 亚洲熟女乱色一区二区三区 | 免费久久精品国产片香蕉| 国产精品亚洲精品爽爽| 亚洲精品国产高清嫩草影院 | 亚洲精品偷拍无码不卡av| 最近免费中文在线视频| 久久久久亚洲AV无码专区网站 | 激情吃奶吻胸免费视频xxxx| 日韩在线永久免费播放| 亚洲精品和日本精品| 一级有奶水毛片免费看| 免费在线黄色网址| A级毛片成人网站免费看| 久久久久亚洲精品天堂| 国产福利在线观看免费第一福利| 亚洲产国偷V产偷V自拍色戒| 免费无遮挡无码永久视频| 亚洲av永久无码嘿嘿嘿 | 日韩免费福利视频| 精品乱子伦一区二区三区高清免费播放| 亚洲人成网77777色在线播放| 精品国产亚洲AV麻豆| 成人午夜性A级毛片免费| 免费看黄网站在线看| 久久亚洲国产精品五月天| 亚洲人成网站免费播放| 一个人看的免费观看日本视频www| 亚洲精品少妇30p| 在线观看免费视频一区| 亚洲国产成人影院播放| 67pao强力打造国产免费| 黄色一级免费网站| 4480yy私人影院亚洲|