# Linux基本指令 [](https://hackmd.io/yXelGmwnQnyFrkq9MCV1jw) <!-- linux基本指令教學 ,將在Github codespace進行示範,使學習者能夠透過codespace的終端機以及介面,即早席熟悉linux指令--> # Linux基本指令教學 ## 目的 本篇教學將介紹Linux的基本指令,包括`pwd`、`ls`、`cd`、`mkdir`、`touch`、`cp`、`mv`、`rm`、`cat`、`more`、`less`、`head`、`tail`、`grep`、`find`、`tar`、`gzip`、`chmod`、`chown`、`ps`、`top`、`kill`、`ifconfig`、`ping`、`wget`、`ssh`、`clear`、`history`等指令,以及vim和nano編輯器。透過本篇教學,我們將學習如何使用這些指令來操作Linux系統。 ## 環境 - 作業系統:Linux - 開發工具:終端機 - 程式語言:Shell - 開發框架:無 ## 1. 什麼是Linux Linux是一個自由和開放源代碼的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。Linux的核心是由林納斯·托瓦茲(Linus Torvalds)在1991年10月5日首次發布。Linux也是一個典型的自由軟體和開放源代碼軟體的範例。Linux也是一個典型的自由軟體和開放源代碼軟體的範例。 ## 2. Linux基本指令 ### 2.1. pwd `pwd`指令用來顯示目前所在的目錄路徑。 ```shell $ pwd /home/user ``` ### 2.2. ls `ls`指令用來顯示目錄下的檔案與目錄。 ```shell $ ls Desktop Documents Downloads Music Pictures Public Templates Videos ``` ### 2.3. cd `cd`指令用來切換目錄。 - 絕對路徑: 從根目錄開始的完整路徑。 - 相對路徑: 從當前目錄開始的路徑。 ```shell $ cd Documents ``` ### 2.4. mkdir `mkdir`指令用來建立目錄。 ```shell $ mkdir test ``` ### 2.5. touch `touch`指令用來建立檔案。 ```shell $ touch test.txt ``` ### 2.6. cp `cp`指令用來複製檔案或目錄。 ```shell $ cp test.txt test2.txt ``` `cp -r`指令用來複製目錄。 ```shell $ cp -r 來源目錄 目的目錄 ``` `cp -a`指令用來複製檔案或目錄,保留原始檔案的屬性。 ```shell $ cp -a test.txt test2.txt ``` ### 2.7. mv `mv`指令用來移動檔案或目錄,也可以用來更改檔案或目錄的名稱。 ```shell $ mv test2.txt Documents ``` `mv -i`指令用來移動檔案或目錄,並提示是否覆蓋。 ```shell $ mv -i test2.txt Documents ``` ### 2.8. rm `rm`指令用來刪除檔案或目錄。 ```shell $ rm test2.txt ``` `rm -rf 檔案或目錄`指令用來強制刪除檔案或目錄。(請小心使用) ```shell $ rm -rf test ``` ### 2.9. cat `cat`指令用來顯示檔案內容。 ```shell $ cat test.txt ``` ### 2.10. more `more`指令用來分頁顯示檔案內容。 ```shell $ more test.txt ``` ### 2.11. less `less`指令用來分頁顯示檔案內容。 ```shell $ less test.txt ``` ### 2.12. head `head`指令用來顯示檔案的前幾行。 ```shell $ head test.txt ``` ### 2.13. tail `tail`指令用來顯示檔案的後幾行。 ```shell $ tail test.txt ``` ### 2.14. grep `grep`指令用來搜尋檔案內容。 ```shell $ grep "hello" test.txt ``` ### 2.15. find `find`指令用來搜尋檔案。 ```shell $ find / -name test.txt ``` ### 2.16. tar `tar`指令用來壓縮與解壓縮檔案。 ```shell $ tar -cvf test.tar test.txt $ tar -xvf test.tar ``` ### 2.17. gzip `gzip`指令用來壓縮與解壓縮檔案。 ```shell $ gzip test.txt $ gzip -d test.txt.gz ``` ### 2.18. chmod `chmod`指令用來更改檔案權限。 ```shell $ chmod 777 test.txt ``` ### 2.19. chown `chown`指令用來更改檔案擁有者。 各種權限的意義如下: - r:讀取權限 - w:寫入權限 - x:執行權限 - u:擁有者 - g:群組 - o:其他 - a:全部 - +:增加權限 - -:移除權限 ```shell $ chown user test.txt ``` ### 2.20. ps `ps`指令用來顯示系統進程。 ```shell $ ps ``` ### 2.21. top `top`指令用來顯示系統資源使用情況。 ```shell $ top ``` ### 2.22. kill `kill`指令用來終止執行。 ```shell $ kill 1234 ``` ### 2.23. ifconfig `ifconfig`指令用來顯示網路設定。 ```shell $ ifconfig ``` ### 2.24. ping `ping`指令用來測試網路連通性。 ```shell $ ping google.com ``` ### 2.25. wget `wget`指令用來下載檔案。 ```shell $ wget https://www.google.com ``` ### 2.26. ssh `ssh`指令用來遠端登入。 ```shell $ ssh user@ ``` ### 2.27. clear `clear`指令用來清除終端機畫面。 ```shell $ clear ``` ### 2.28. history `history`指令用來顯示指令歷史。 ```shell $ history ``` ### 2.29. man `man`指令用來查看指令的說明文件。 ```shell $ man ls ``` ### 2.30. clear `clear`指令用來清除終端機畫面。 ```shell $ clear ``` ### 2.31. apt-get `apt-get`指令用來安裝和管理軟體包。 ```shell $ sudo apt-get install package ``` ## 編輯器 ### vim `vim`是一個強大的文本編輯器,可以用來編輯各種文本檔案。 ```shell $ vim test.txt ``` - 按`i`進入編輯模式 - 編輯完成後按`Esc`退出編輯模式 - 輸入`:wq`保存並退出 - 輸入`:q!`不保存並退出 - 輸入`:w`保存 - 輸入`:q`退出 - 輸入`:set nu`顯示行號 - 輸入`:set nonu`隱藏行號 - 按`Shift + G`跳轉到最後一行 - 按`gg`跳轉到第一行 - 按`/`進入搜尋模式 - 按`n`跳轉到下一個搜尋結果 - 按`N`跳轉到上一個搜尋結果 - 按`dd`刪除一行 - 按`yy`複製一行 - 按`p`粘貼 - 按`u`撤銷 - 按`Ctrl + r`重做 - 按`Shift + v`進入可視模式 ### nano `nano`是一個簡單的文本編輯器,可以用來編輯各種文本檔案。 ```shell $ nano test.txt ``` - 按`Ctrl + O`保存 - 按`Ctrl + X`退出 - 按`Ctrl + G`顯示幫助 ## 3. 結論 透過本篇教學,我們學習了Linux的基本指令,包括`pwd`、`ls`、`cd`、`mkdir`、`touch`、`cp`、`mv`、`rm`、`cat`、`more`、`less`、`head`、`tail`、`grep`、`find`、`tar`、`gzip`、`chmod`、`chown`、`ps`、`top`、`kill`、`ifconfig`、`ping`、`wget`、`ssh`、`clear`、`history`等指令,以及vim和nano編輯器。這些指令是Linux操作系統中最基本的指令,對於初學者來說非常重要。希望本篇教學能夠幫助大家更好地理解和使用Linux操作系統。
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.