天天看點

新手Linux指令行學習(一)——shell是什麼、導航檔案系統一、Shell是什麼二、導航檔案系統

記錄整理一下學習shell的過程,把一些重點記下來,友善以後查閱。本人小白,從最基礎開始學習。

學習的書:《Linux指令行大全》【美】William E.Shotts,Jr著

Linux版本:Ubuntu16.04 (我是在VM虛拟機裡跑的)

目錄

  • 一、Shell是什麼
    • 1、嘗試幾個簡單的指令
    • 2、Tips
  • 二、導航檔案系統
    • 1、絕對路徑名與相對路徑名
    • 2、Tips

一、Shell是什麼

我們通常所說的指令行,實際上是指的shell。shell是linux系統中的一個程式——接收來自鍵盤的指令,并将其傳遞給作業系統執行。

幾乎所有的Linux發行版都提供shell程式,該程式來自稱之為bash的GNU項目。bash是Bonrue Again Shell的縮寫。Bonrue Again Shell基于這樣一個事實,即bash是sh的增強版本,而sh是最初的UNIX shell程式,由Steve Bourne編寫。

1、嘗試幾個簡單的指令

首先,打開終端

ctrl+alt+T
           

這是打開終端的快捷鍵,好像還有一個快捷鍵更友善,不過我忘了…想起來再加。

終端運作後如下所示

[email protected]-virtual-machine:~$
           

其中“:”以前是使用者名資訊,以後為shell提示符,分别表示目前工作目錄和登入權限。

初始登入時,目前工作目錄為使用者主目錄,由符号“~”表示;

“ $ ”表示以普通使用者身份登入,若為“#”,則表示以root權限登入,享有超級使用者特權。

下面列出幾個基礎的shell指令:

#以下代碼省略了按enter後實際顯示的内容
[email protected]-virtual-machine:~$ date  #顯示目前的時間和日期
[email protected]-virtual-machine:~$ cal  #顯示當月月曆
[email protected]-virtual-machine:~$ df  #檢視磁盤驅動器可用空間
[email protected]-virtual-machine:~$ free  #檢視可用記憶體
[email protected]-virtual-machine:~$ exit  #結束終端會話
           

2、Tips

  • 快速翻看最近輸入的指令。 大部分Linux版本能夠存儲最近輸入的500個指令,是以,隻需要按上下訓示鍵即可快速找到最近輸入的指令
  • 快速複制粘貼。 滑鼠選中需要的文本,按下滑鼠中鍵,該文本便可粘貼到光标所處位置。(比我之前用滑鼠右鍵複制粘貼快好多!強推!我是不是太孤陋寡聞了…)

二、導航檔案系統

Linux系統的檔案是在樹形結構的目錄中進行組織的。

檔案系統的第一個目錄叫根目錄,根目錄包含檔案和子目錄,子目錄包含其他的檔案和子目錄,即為樹形結構。

在Windows系統中,每個儲存設備都有一個獨立的檔案系統樹。而在類UNIX系統中,如Linux,無論多少驅動器或儲存設備與計算機相連,通常隻有一個檔案系統樹。

根據系統管理者的設定,儲存設備将會連接配接(更準确地說是“挂載”)到檔案系統樹的不同位置。

其實我現在沒有很懂以上這段話,再學學看,懂了就回來解釋

1、絕對路徑名與相對路徑名

上面提到,檔案系統的第一個目錄為“根目錄”(用前導斜杠“/”表示),絕對路徑名是從根目錄開始,通過檔案樹分支,到達目标檔案或目錄。

[email protected]-virtual-machine:~$ pwd  #顯示目前工作目錄絕對路徑 
/home/yh  #目前工作目錄,即使用者主目錄,并不是根目錄。作為普通使用者操作時,這是唯一一個允許使用者寫檔案的地方
[email protected]-virtual-machine:~$ ls  #列出目前工作目錄的檔案和子目錄
Desktop    Downloads         Music     Public     Videos
Documents  examples.desktop  Pictures  Templates
[email protected]-virtual-machine:~$ cd /usr/bin  # cd指令可改變工作目錄;/usr/bin為一個絕對路徑名,大多數系統程式安裝到這個目錄
[email protected]-virtual-machine:bin$ pwd  #可觀察到shell提示符變為了“bin$”
/usr/bin  #Line5~7為通過絕對路徑名更改工作目錄的一個例子
           

相對路徑名則是從工作目錄開始通到目标檔案或目錄。

通常使用特殊符号表示檔案系統樹中的相對位置,“.”(一個點)表示工作目錄,“…”(兩個點)表示工作目錄的父目錄,下面有個例子:

[email protected]-virtual-machine:~$ pwd  #顯示目前工作目錄絕對路徑 
/home/yh
[email protected]-virtual-machine:~$ cd ..  #回到父目錄
[email protected]-virtual-machine:home$ pwd
/home
[email protected]-virtual-machine:home$ cd ./yh  #進入目前目錄子目錄
[email protected]-virtual-machine:~$ pwd
/home/yh
           

實際操作一下會更有感覺~

2、Tips

  • 幾個cd指令的快捷方式
cd  #将目前目錄改為主目錄
cd -  #将目前目錄改為先前工作目錄
cd ~username  #将目前目錄改為username的主目錄
           
  • 以“.”開頭的檔案名時隐藏的,ls指令不會列出它們,ls -a可以。一些程式的配置檔案或設定檔案會以隐藏檔案的形式放在主目錄下。
  • 檔案名與指令區分大小寫
  • Linux沒有檔案拓展名的概念,可以随意命名
  • 建立檔案名時,僅句号、連字元、下劃線這些特殊符号可以用,且最好不要出現空格,否則一些程式運作可能會出bug。

繼續閱讀