mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-06 11:30:13 +08:00
quest: execute
This commit is contained in:
1 parent
8597c22b9f
commit
887d205ec1
6 files changed
+215
-16
No files matched your search
@@ -25,7 +25,7 @@
|
||||
|
||||
---
|
||||
|
||||
那我們要執行一個可執行檔時,只要直接輸入它的路徑就可以執行它。
|
||||
我們要執行一個可執行檔時,只要直接輸入它的路徑就可以執行它。
|
||||
我們來試看看使用執行檔的路徑來執行指令。
|
||||
|
||||
> 輸入 `/bin/ls` 來查看當前的資料夾
|
||||
@@ -51,9 +51,30 @@
|
||||
|
||||
---
|
||||
|
||||
你會看到這是一個用 `echo` 所組成的簡單程式,
|
||||
你會看到這是一個用 `echo` 和 `cat` 所組成的簡單程式。
|
||||
詳細的內容不用了解沒關係,功能是和 `cat` 一樣,用來印出檔案內容的程式。
|
||||
但是這支程式,在沒有給要印出的檔案時,不會停留在輸入狀態。
|
||||
|
||||
當我們要執行一個非內建的指令時,需要指定它的路徑,可以使用絕對或是相對路徑。
|
||||
如果使用相對路徑時,要用 `./` 來代表當前的目錄。因此我們要用 `./dog` 來執行 `dog` 檔案。
|
||||
當我們要執行一個檔案時,就是用指定路徑的方式。
|
||||
那因為 `dog` 位在家目錄底下,所以牠的絕對路徑就是 `/home/commander/dog`,我們也可以用簡寫 `~/dog`。
|
||||
|
||||
> 輸入 `./dog` 來執行 `dog` 檔案
|
||||
> 輸入 `~/dog` 來執行 `dog` 檔案
|
||||
|
||||
---
|
||||
|
||||
你看到了終端機輸出這隻傲嬌的狗。
|
||||
除了使用絕對路徑,很多時候,我們會處在跟程式相同的資料夾,這時使用相對路徑會更為便利。
|
||||
但跟平常列出檔案時不一樣,我們為了區別它不是內建的指令,需要加上 `./` 在檔名前面。
|
||||
`.` 在路徑中,代表的就是當前的資料夾。
|
||||
那我們再試試看使用相對路徑,並讓牠接收一個檔案作為參數。
|
||||
|
||||
> 輸入 `./dog hello.txt` 來印出 `hello.txt` 的內容
|
||||
|
||||
---
|
||||
|
||||
你看到這隻狗在講了幾句話後也印出了 `hello.txt` 的內容了。
|
||||
這個範例,其實就是一個簡單的自訂指令。
|
||||
我們可以把一大串指令,寫在一個檔案裡讓它自動執行,幫我們處理一些複雜或是重複性的工作。
|
||||
我們在使用別人寫的程式時,也常會用到這個技巧。
|
||||
|
||||
最後留一個小挑戰給你,請試著移動到 `commands` 資料夾後,再使用相對路徑執行裡面的 `lucky` 檔案。
|
||||
Reference in new issue
Block a user