今天講大家可能都用過的 * 號與 * 號有點類似的 {} 號,買東西被雷實在
首先 * 號應該大家都用過,但是我要先自首從高職開始開 MINECRAFT 伺服器給同學們玩就常常用到指令界面, * 號早就在高職階段早就用過無數次,我到大二還大三才搞清楚 * 號的運作方式。
高職階段,我一直以為 * 號是 rm 、 ls 等指令可以接受的萬用字元。到了某天才知道,我們打 * 其實是在 Shell 的時候, Shell 會把 * 號展開,變成一長串,最後才執行 rm 或是 ls 之類的指令。
{} 除了搭配 $ 使用,也可以中間塞 , 使用,使用方式如下:cp -a /etc/{nginx,php} ~/backup/
shell 會把 /etc/{nginx,php} 展開成 /etc/nginx /etc/php ,所以執行的指令會是 cp -a /etc/nginx /etc/php ~/backup/ 。
{} 除了用在複製比較深的目錄中的兩三個項目,也有另外一種方便的方式:mv myProject{,-old}
這樣 shell 會展成 mv myProject myProject-old ,就不用狂按 Tab 來打兩次 myProject 啦。
那如果是很深的路徑裡面的一堆檔案呢?rm /tmp/{*.tmp,*.old}
這個也可以喔, {} 可以跟 * 號混著用!
我是誰?
我是 dd-han ,可以叫我呆翰,是國立臺中科技大學的延畢生 與 創科資訊的時習生。