執行檔案路徑變數:$path
檔案與目錄管理
上一章簡單的提到絕對路徑和相對路徑
絕對路徑:路徑的寫法一定是由根目錄(/)寫起的,例如:/home/user 這個目錄相對路徑:路徑的寫法不是由根目錄(/)寫起,例如:我當前所在目錄 /home/user,我要切換到/home/user2 目錄下。那麼寫法就是 cd …/user2,其實相對路徑指的意思是:相對於當前目錄的路徑。
###特殊的目錄:
. //代表當前目錄
.. //代表上一次目錄
- //代表前乙個工作目錄(其實就是上乙個操作的目錄)
~ //代表當前使用者的家目錄,例如當前使用者是user,那麼user的家目錄就是在/home/user下
~username //代表使用者名為username的使用者的家目錄。
cd //切換目錄
pwd //顯示當前目錄
mkdir //建立目錄
rmdir //刪除空目錄,注意是空目錄!不空的目錄後面再講
簡單指令用法如下
cd /home/user //使用絕對路徑切換目錄
pwd //顯示當前所在目錄,只會顯示絕對路徑
mkdir dir //建立乙個名為dir的目錄(可以理解為資料夾)
rmdir dir //刪除乙個名為dir的空目錄
ls為查閱檔案屬性的指令,起對應完整檔名為:/bin/ls(這是絕對路徑),那麼為什麼我們輸入ls就會執行/bin/ls這個指令呢?這是因為環境變數path所致的。相當於我們window下的環境變數path。
echo $path //列印path變數,$號後面接的是變數。
/home/vagrant/bin:/home/vagrant/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
可以看到每個目錄中間用冒號(:)來隔開,每個目錄都會有順序之分。我們之所以可以執行ls命令,那是因為ls指令存在/bin目錄下,我們可以看到$path有/bin這個目錄,所以ls指令就可以直接執行啦。
例舉常用新增環境變數的兩種方式,需要把/home/vagrant新增到環境變數:
1.只對當前使用者生效:
修改家目錄下的 .bashrc檔案,然後在檔案的最下方加入:
export path=/home/vagrant:$path
///儲存後執行
source ~/.bashrc
2.修改/etc/environment檔案,直接使用vim命令在後面新增就可以了。
cat /etc/environment //檢視該檔案
path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
檔案與目錄的管理,其實主要就是顯示屬性、複製、刪除、移動等操作。
選項:ls
可以說是最常用的指令了,而ls
指令一些常用的選項如下:
-a : 列出全部檔案,包括隱藏檔案(開頭為 . 的檔案)
-d : 僅列出目錄本身,而不列出目錄內的檔案資料
-l : 列出的檔案或目錄,乙個佔一行,並且顯示檔案的屬性、許可權等等資料。
使用方式如下:
ls -[options]
cp(複製檔案或目錄)
cp
指令也非常重要,因為我們也經常進行檔案的複製,所以也會常常用到這個指令。如果要去複製別人的檔案,我們必須有read(讀)許可權。一般來說複製別人的檔案後,該檔案的擁有者就會變成自己的啦。
常用選項:
-i : 若檔案已經存在時,詢問是否需要覆蓋檔案。
-p : 把檔案的屬性(許可權、使用者、時間)一起複製過去。
-r :遞迴複製,例如複製非空的目錄,就需要使用這個指令啦。
使用方式如下:
cp [-options] 原始檔 目標檔案
cp -i /usr/bin /tmp/bin //例子
**rm(移除檔案和目錄)** 選項: -f : 忽略不存在的檔案,不會出現警告資訊 -i : 執行刪除動作時會詢問你是否真的需要刪除 -r : 遞迴刪除,常用在目錄的刪除上,使用這命令要再三確認啊。危險!
使用方式如下:
rm [-options] 檔案或目錄
**mv(移動/更名 檔案或目錄)** 相似於window下的剪下和重新命名操作。 選項: -f :如果檔案已存在,不會詢問而只是直接覆蓋。 -i :如果檔案已存在,則會詢問是否需要覆蓋。 -u :如果檔案已存在,且複製的檔案比已存在的檔案新,就會覆蓋。 ``` mv -[options] 原始檔 目標檔案 mv /home/vagrant /tmp/vg //此命令就會把home下vagrant目錄移動到tmp目錄下,並且改名為vg啦。 ``` 擴充套件:其實更名還有乙個命令,叫做rename。需要詳細了解的話可以 man rename看一看。
個人部落格:
鳥哥Linux私房菜
linux相關知識 鳥哥linux私房菜 真是人間美味啊!linux 基礎篇 引言 這部份包括了早期的red hat 6.x以及 鳥哥寫的 一 二版的基礎篇各章節文章彙整!第一部份 linux的規劃與安裝 第二部份 linux檔案 目錄與磁碟格式 第三部份 學習shell與shell scripts...
鳥哥的linux私房菜筆記
第零章 計算機概論 1.整部主機當中最重要的就是cpu與主記憶體,而cpu的資料來源通通來自於主記憶體,如果要由過去的經驗來判斷事情時,也要將經驗 硬碟 挪到目前的記憶 主記憶體 當中,再交由cpu來判斷喔 這點得要再次的強調啊!2.常見的單位與進製對應 進製km gtp二進位 1024 1024k...
鳥哥私房菜
鳥哥 linux 私房菜 ad 在我們平時使用unix命令的時候,需要平時多積累並且整理。下面,就是我們在平時時候整理的unix命令。而且是很全面的bash內建命令.bash內建unix命令 執行當前程序環境中的程式。同source。file dotunix命令從檔案file中讀取命令並執行。空操作...