내 .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\""'
그게 당신에게 효과가 있나요?