命令列星期二 —— 第三篇
| 2014-07-15 10:00 評論: 1 收藏: 2 分享: 1
今天,肖茨先生將帶領我們遊歷檔案系統的第一部分。我們將學到如何訪問、列出目錄內的檔案,以及首次介紹一些選項的運用。OK,讓我們開始學習這周的第一個命令。
ls
ls 是一個用來列出目錄內檔案的命令。透過新增選項來實現多種不同的用途。簡單起見,你可以只需鍵入 ls 。但是,你也可以在命令後面新增一個選項,它會幫助你修飾你的命令。如果你想要隨意擺弄一些資訊時,這會幫到你的。舉例來說,當你要從一個命令的大量輸出中找尋指定資訊,你可以用選項縮小範圍來實現。
這就是選項的基礎概念。我們可以用下面書寫格式表示:
command(命令) -option(選項) argument(引數)
命令,恩...,我們可以輸入 pwd、 ls, 或者我們到目前為止所有學過的命令。
以上我們已經闡述了選項的目的。但是我們需要注意一下書寫格式:在前頭新增一個破折號。所以,如果選項為 l, 你需要在命令後鍵入-l。
引數是一個命令的操作物件(在這個例子中,它是一個目錄,我們將會學到如何瀏覽它們)。
接著,讓我們嘗試在主目錄裡嘗試用 ls 命令列出 /etc 目錄內容。這次我們先不新增選項。
就這樣,列出了一大堆的檔案。它們還根據顏色進行了分類。藍色的是目錄,白色的為普通檔案,綠色的似乎是某種 shell 指令碼檔案。除此之外,還有其他不同的顏色來代表不同的檔案型別。
接下來,你可以在剛才的命令裡新增 -l 選項。新增選項 -l 後也會列出同樣的檔案和目錄,但是以長格式方式輸出。如果你需要檢視更多資訊的話,這個選項將是不錯的選擇。
長格式
這樣,用了長格式後,你可以看到更詳細的資訊,以及在每行開頭類似-rw-r--r-- 令人抓狂的標示。實際上,這只是一種組合,代表了各種意義的資訊。
(File Name)就是檔案的名稱。(Modification time)是檔案最後修改的時間。(Size) 用 byte 計量的檔案大小。(Group) 是組的名稱,和擁有者一起構成檔案許可權。(Owner) 是檔案擁有者的名稱。最最重要的…
…檔案許可權
檔案許可權在長格式每一行的開端都顯得非常的雜亂。第一個字元代表檔案型別。如果是 'd' , 意味著它是一個目錄。如果是 '-' , 意味著它是一個一般檔案。接下來的三個字元分別代表擁有者的可讀, 可寫 ,可執行的許可權。再接著三個字元表示組成員的享有的檔案許可權,而最後三個字元表示其他人(既不是擁有者也不是同組)對檔案的享有許可權。
例如,如果有個檔案在長格式下顯示為:-rw-r--r--, 這說明這是個普通檔案(首字元 '-'),擁有者享有可讀可寫許可權,但是沒有可執行許可權,導致擁有者無法執行該檔案(首字元'-'後'rw-'),使用者組和其他使用者只享有可讀許可權(你不難發現'r--'欄位在後面出現了兩次 。如果使用者組是 'rwx' 而不是 'r-',則意味著它們可讀,可寫,可執行)。
ls 的下個選項是 ls -la .. ,-a 它會列出所有的檔案,包括隱藏檔案。在通常情況下,隱藏檔案是不可見的。用長格式列出當前工作目錄下的父目錄的所有檔案。
less
less 是一個可以顯示你的文字檔案的命令。舉例來說,你要在 /etc 下找尋名為 os-release 的文字檔案。你可以使用 ls /etc 成功實現,而現在你想要閱讀它的內容。
你只需要使用 less /etc/os-release。
..就這樣了。
你要如何控制 less 呢?
簡單的, 你只需要動動鍵盤就行了!
less 一次只會顯示一個頁面的文字。往前翻頁你需要按 Page Up, 或者 'b'。往後翻頁你可以按Page Down, 或者 空格。大寫的G會跳轉到文字的末尾,1G會跳轉到文字的開端。/字元會在文字內搜尋指定字元(例如,如果你輸入 /suse ,它會找尋所有文字含有的 suse 並標記出來)。n 會重複執行你的搜尋,h會顯示所有的選項(h,即幫助的意思)。
按q退出 less 命令。
file
file 會顯示檔案的型別,是否是你要找的 ASCII 文字,還是 jpg 圖片,bash 指令碼等。讓我們用 /etc/os-release 執行練習。
這樣,如你所見,os-release 是一個 ASCII 文字檔案。 請嘗試其他檔案,並觀察結果。
下回見了,記住…
…一定要玩的開心啊!
via: https://news.opensuse.org/2014/07/01/command-line-tuesdays-part-three/
相關文章
- 命令列星期二——第七部分命令列
- cmd 命令列 命令命令列
- windows命令列命令Windows命令列
- git命令列命令Git命令列
- SQL Server 列儲存索引 第三篇:維護SQLServer索引
- Shell命令列命令列
- Mac命令列Mac命令列
- Linux命令列與命令Linux命令列
- Swift學習筆記第三篇(字串,陣列,集合,字典)Swift筆記字串陣列
- 晨報 |「2024.2.27」星期二
- 晨報 |「2024.3.5」星期二
- Go 實現 Raft 第三篇:命令和日誌複製GoRaft
- windows 常用命令列命令Windows命令列
- Windows XP中的命令列命令Windows命令列
- TortoiseSVN 命令 (命令列執行工具)命令列
- 命令列基礎命令列
- Flutter 命令列打包Flutter命令列
- 【Git】命令列操作Git命令列
- ROS命令列工具ROS命令列
- mvn命令列清理命令列
- .NET CORE命令列命令列
- Git 命令列使用Git命令列
- 初識命令列命令列
- perl 命令列模式命令列模式
- 命令列筆記命令列筆記
- 備份命令列命令列
- Linux命令列Linux命令列
- MySQL入門--如何呼叫命令列命令MySql命令列
- ffprobe,ffplay ffmpeg常用的命令列命令命令列
- MySQL退出命令列模式MySql命令列模式
- openssl命令列和API命令列API
- PDF 的命令列操作命令列
- 命令列使用小結命令列
- thinkphp 命令列外掛PHP命令列
- 命令列解析函式命令列函式
- Click: 命令列工具神器命令列
- EFCore之命令列工具命令列
- Git常用的命令列Git命令列