id: create title: 建立檔案與資料夾 image: base instruction: | 在這個關卡中,你將會學到: 1. 如何使用 `touch` 建立檔案 2. 如何使用 `mkdir` 建立資料夾 requirements: - tab stages: - id: start name: 按下 `開始` 按鈕開始 condition: command: echo start response: content: | 這次要學習的指令是 `touch` 指令。 請你先用 `ls` 指令查看目前所在資料夾中有哪些檔案。 你應該會發現目前所在資料夾中沒有任何檔案。 hint: 輸入 `ls` 指令來查看目前所在資料夾中有哪些檔案 - id: ls name: 查看資料夾中的檔案 requirements: - start condition: command: ls response: content: | 你應該可以看到終端機上沒有任何回應,這表示目前所在資料夾中沒有任何檔案。 而我們可以使用 `touch [檔案名稱]` 指令來建立一個檔案。 接下來,請你試著在終端機上建立一個檔案,檔名為 `hello.txt`。 hint: 輸入 `touch hello.txt` 來建立一個檔案 - id: touch name: 使用 `touch` 指令來建立一個檔案 requirements: - ls condition: files: - path: /home/commander/hello.txt type: file exists: true exceptions: - id: missing_extension condition: files: - path: /home/commander/hello type: file exists: true response: content: | 你似乎忘記輸入副檔名 `txt` 了。 請再試一次,並確保檔名為 `hello.txt`。 response: content: | 你應該可以看到終端機上沒有任何回應。 而右邊的檔案樹可以看到已經建立了 `hello.txt` 這個檔案。 我們來看看 `hello.txt` 檔案的內容吧! 我們可以使用之前學過的 `cat` 指令來查看檔案內容。 hint: 輸入 `cat hello.txt` 來查看 `hello.txt` 檔案的內容 - id: cat name: 使用 `cat` 指令來查看 `hello.txt` 檔案的內容 requirements: - touch condition: command: cat hello.txt response: content: | 咦?竟然什麼都沒有! 沒錯,使用 `touch` 指令建立的檔案是空的。 我們在未來會學習如何編輯檔案的內容。 再來試試建立其他的檔案吧! 請你試著在終端機上建立另一個檔案,檔名為 `world.txt`。 hint: 輸入 `touch world.txt` 來建立一個檔案 - id: touch-2 name: 使用 `touch` 指令來建立另一個檔案 `world.txt` requirements: - cat condition: files: - path: /home/commander/world.txt type: file exists: true exceptions: - id: missing_extension condition: files: - path: /home/commander/world type: file exists: true response: content: | 你似乎忘記輸入副檔名 `txt` 了。 請再試一次,並確保檔名為 `world.txt`。 response: content: | 非常好,你已經成功建立了第二個檔案。 你可以看到檔案樹上顯示了 `hello.txt` 和 `world.txt` 這兩個檔案。 接下來,我們來試試看建立資料夾吧! `mkdir` 指令可以建立一個空的資料夾。 使用方式是 `mkdir [資料夾名稱]`。 請你試著在終端機上建立一個資料夾,名稱為 `notes`。 hint: 輸入 `mkdir notes` 來建立一個資料夾 - id: mkdir name: 使用 `mkdir` 指令建立 `notes` 資料夾 requirements: - touch-2 condition: files: - path: /home/commander/notes type: directory exists: true response: content: | 非常好,你已經成功建立了 `notes` 資料夾。 接下來,我們要在 `notes` 資料夾中建立一個 `note.txt` 的檔案。 首先,我們要先進入 `notes` 資料夾。 還記得之前的 `cd` 指令嗎?請你試著使用 `cd` 指令來進入 `notes` 資料夾。 hint: | 輸入 `cd notes` 來進入 `notes` 資料夾 可以在輸入到 `cd n` 時按下 `Tab` 鍵來自動補齊資料夾名稱 - id: cd-notes name: 移動到 `notes` 資料夾 requirements: - mkdir condition: pwd: /home/commander/notes response: content: | 你已經成功進入了 `notes` 資料夾。 接下來,請你試著在 `notes` 資料夾裡建立一個檔案,檔名為 `note.txt`。 hint: 輸入 `touch note.txt` 來建立一個檔案 - id: touch-note name: 在 `notes` 中建立 `note.txt` 檔案 requirements: - cd-notes condition: files: - path: /home/commander/notes/note.txt type: file exists: true response: content: | 非常好,你已經成功建立了 `note.txt` 檔案。 恭喜你完成了這個關卡! 在下一個關卡中,你將學習如何複製檔案與資料夾。 輸入 `echo finish` 來完成這個關卡。 - id: END name: 完成關卡 requirements: - touch-note condition: command: echo finish response: content: | 恭喜你完成了這個關卡!