2015-03-15

Ubuntu Linux 用 fc 指令修改並執行歷史指令

如果你剛剛執行過一個很長一串的指令串,然後,現在又要再執行一遍,只不過有些參數要改掉,這個時候,你會怎麼做呢 ? 阿舍通常就是用 history 指令找出把組指令,然後,再用滑鼠把它複製和貼上之後,再來修改及執行,雖然,動作是有點多,不過,也算是達的到修改已執行指令的目的哩 ! ...




但是 ... 其實,有個叫做 fc 的指令已經可以更簡單的做這件事了,而且,一次還可以改好幾組指令哩 ! 然後,重點是,fc 指令是一點點都不難用,只要給它歷史指令的編號,fc 指令就會把你帶到預設的文字編輯器去編輯這幾組你所選的歷史指令,等編好之後,fc 指令就會直接執行這幾組指令,所以,這幾組新執行的指令也就會被放入歷史指令中,但是,fc 指令本身是不會被放入的哩 !

透過 fc 指令可一次修改並執行多行指令

像阿舍想要修改編號第 80 號的歷史指令的時候,直接用下面的指令後,fc 指令就會把第 38 號指令的內容帶入 Ubuntu 或 Linux 預設的文字編輯器來供修改,等改好之後,就會直接執行新的 80 號指令內容,之後,再用 history 指令查看的時候,就會多了一組剛剛改好的那組指令囉 !

$ fc 80

$ fc 80 83  # 執行結果如上圖

另外,就如阿舍前面提到的,fc 指令也可以一次修改連續的歷史指令,例如,阿舍要修改第 80 到 83 號之間的所有歷史指令的話,就可以用像上面第二行指令的方式來操作,這樣 fc 指令就會把 80 到 83 號帶進編輯器來讓阿舍編輯,而且,改好離開編輯器之後,這樣新改好的指令就會被依序的執行哩 !  這比起阿舍自己用手動的方式來說,fc 指令自動化了不少步驟,算是很方便的啊 !

關於 fc 指令使用的編輯器的部份,如果沒有指定的話,fc 指令就會使用系統預設的文字編輯器,而如果想指定的話,可以使用 -e 選項來指令編輯器,以阿舍要改用阿舍習慣的 vi 編輯器為例,就可以用下面這一行的方式,如果,不想每次都要指定編輯器的話,就請參考阿舍寫的這篇囉 !

$ fc -e vi 80


推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁