提醒:
每個範例前方的$
符號為終端機的提示字元,非指令的一部分,不需要輸入。
ls
:查看檔案及目錄$ ls
$ ls -la
-l
:顯示詳細資料-a
:顯示隱藏資料$ ls *.txt
列出為 .txt 的檔案
$ ls ?????
列出檔名長度為5個字元的檔案
$ ls -R
列出所有目錄檔案,如果有子目錄,則會連子目錄內的檔案都列出來(遞迴搜尋)。
###pwd
:取得目前所在路徑
$ pwd
cd
:切換目錄$ cd Documents
進入目前路徑下的Documents目錄
$ cd ~
回到目前帳號的家目錄
$ cd ..
跳到上一層目錄
$ cd /
跳到根目錄
cp
:複製檔案$ cp a.txt b.txt
將a.txt內容在同一個目錄下複製一份為b.txt(會同時存在a.txt和b.txt兩個檔案)
$ cp * ../
將目前目錄下的所有檔案都複製一份到上一層目錄
$ cp a.txt /tmp
將a.txt複製到/tmp目錄下。
mv
:搬移檔案$ mv a.txt b.txt
將a.txt搬移到b.txt,因為在同一目錄下,所以又可以當成幫檔案更改名稱
$ mv a.txt /tmp
將a.txt檔案搬移到/tmp目錄下。
rm
:刪除檔案$ rm a.txt
刪除a.txt檔案
$ rm *
刪除目前目錄下的所有檔案(使用時須小心,因為不可復原)。
mkdir
:建立目錄$ mkdir src
在目前目錄下建立一個名為src的目錄
$ mkdir -p src/cmd/main
在目前目錄下建立src目錄下的cmd目錄下的main目錄,如果src或cmd目錄不存在會一併被建立。
rmdir
:刪除目錄$ rmdir src
刪除src目錄,刪除時src目錄必須為空,否則會刪除失敗。
touch
:新增空白檔案$ touch main.py
新增一個main.py檔案,檔案內容為空。
cat
:將文件內容顯示在終端機畫面上$ cat README.txt
將README.txt檔案內容顯示到終端機上
head
:指定列出檔案前幾行的內容$ head -n 10 README.txt
列出README.txt前面10行內容
tail
:顯示檔案最後幾行內容$ tail -n 10 README.txt
列出README.txt最後10行內容
grep
:搜尋檔案內容$ cat README.txt | grep aaron
找出README.txt檔案內有出現aaron字串的那一行內容。
$ grep -rn "aaron" *
找出內容有aaron字串的所有檔案。
find
:尋找檔案$ find /path/to/dir -name "filename"
$ find /etc -name "httpd.conf"
找出/etc目錄下叫httpd.conf的檔案
$ find . -name 'log*'
找出所有log開頭的檔名,需注意
*
萬用字元必須搭配左右兩邊的單引號才有效。
vim
:在終端機編輯檔案$ vim README.txt
打開README.txt檔案並編輯。
打開後指令,
i
進入編輯模式,ESC
離開編輯模式,:q
不儲存離開,:wq
儲存離開,:q!
強制離開。
crontab
:定時任務# ┌───────────── 分鐘 (0 - 59)
# │ ┌─────────── 小時 (0 - 23)
# │ │ ┌───────── 日 (1 - 31)
# │ │ │ ┌─────── 月 (1 - 12)
# │ │ │ │ ┌───── 星期幾 (0 - 7,0 是週日,6 是週六,7 也是週日)
# │ │ │ │ │
# * * * * * /path/to/command
範例:
# 每天早上 8 點 30 分執行
30 08 * * * /home/gtwang/script.sh --your --parameter
# 每週日下午 6 點 30 分執行
30 18 * * 0 /home/gtwang/script.sh --your --parameter
# 每週日下午 6 點 30 分執行
30 18 * * Sun /home/gtwang/script.sh --your --parameter
# 每年 6 月 10 日早上 8 點 30 分執行
30 08 10 06 * /home/gtwang/script.sh --your --parameter
# 每月 1 日、15 日、29 日晚上 9 點 30 分各執行一次
30 21 1,15,29 * * /home/gtwang/script.sh --your --parameter
# 每隔 10 分鐘執行一次
*/10 * * * * /home/gtwang/script.sh --your --parameter
# 從早上 9 點到下午 6 點,凡遇到整點就執行
00 09-18 * * * /home/gtwang/script.sh --your --parameter