來自終端的別名命令,用於在特定資料夾上開啟新終端

來自終端的別名命令,用於在特定資料夾上開啟新終端

我的 .bash_profile 中已經有此指令:

alias mysite='cd /Applications/sites/mysite;pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./'

所以:

  • CD放入資料夾內
  • 開始工匠服務
  • 在該地址打開一個新的瀏覽器窗口
  • 在同一位置開啟一個新的 Finder 窗口

我想要它做的是添加一個新命令來執行以下操作:

open -a Terminal cd /Applications/sites/mysite

因此它會打開一個新的終端機窗口,並將該新終端機窗口 cd 到同一資料夾。

是否可以?我試過這個:

alias mysite='cd /Applications/sites/mysite;pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./ | open -a Terminal cd /Applications/sites/mysite'

但我無法讓它發揮作用。它執行第一個範例中的所有操作,但它永遠不會開啟新的終端機視窗:(

先致謝!

答案1

我認為命令的最後一部分 ( open -a Terminal cd /Applications/sites/mysite) 不起作用,因為參數未傳遞為作為命令執行,請參閱類似的問題這裡

一種解決方法是在最後一部分使用 AppleScript:

osascript -e 'tell application "Terminal" to do script "cd /Applications/sites/mysite"'

要將其包含在別名定義中,請確保所有單/雙引號匹配並在必要時轉義:

alias mysite='cd /Applications/sites/mysite; pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./ | osascript -e "tell application \"Terminal\" to do script \"cd /Applications/sites/mysite\""'

那對你有用嗎?

相關內容