이것이 가능한지 알고 싶습니다.
5 개의 탭을 여는 스크립트 또는 명령을 설정하고 열릴 각 탭에는 자체 디렉토리가 지정됩니다
같은 창에서 모두
tab 1: open ~/folderA1
tab 2: open ~/folderA2
tab 3: open ~/folderA3
tab 4: open ~/folderA4
tab 5: open ~/folderA5
이것은 Mac OS X의 iTerm2에 있습니다.
CMD + T와 같은 작업을 수행 한 다음 각각을 사용하여 열 cd ~/folderA1
수 있습니다.하지만 설정할 수있는 명령이나 스크립트가 실행되면 한 번에 모두 수행 할 수있는 스크립트가 있으면 알고 싶습니다. 그렇게 할 수있는 방법이 있다면
답변
업데이트 : 최신 iTerm에서는 구문을 변경해야하므로 다음과 같습니다.
tell application "iTerm"
tell current window
create tab with default profile
end tell
tell current tab of current window
set _new_session to last item of sessions
end tell
tell _new_session
select
write text "cd \"$dir\""
end tell
end tell
이전 iTerm 버전의 경우 :
내 대답에서 스크립트를 가져 와서 다음과 같이 할 수 있습니다.
launch () {
for dir in ~/folderA{1..5}; do
/usr/bin/osascript <<-EOF
tell application "iTerm"
make new terminal
tell the current terminal
activate current session
launch session "Default Session"
tell the last session
write text "cd \"$dir\""
end tell
end tell
end tell
EOF
done
}
진행 상황을 설명하려면 :
-
우리는이라는 셸 함수를 만들
launch
므로~/.bash_profile
시작시 실행하려는 곳이나 원하는 곳에 넣을 수 있습니다 . -
배쉬 중괄호 확장의 결과를 통해 우리는 루프
~/folderA{1..5}
당신을 제공~/folderA1
을 통해~/folderA5
. -
iTerm2 AppleScript 라이브러리를 통해
osascript
새 탭을 생성하고 활성화하고 기본 세션을 시작cd
하고 지정된 디렉토리로 이동합니다.
답변
itermocil이이 를 처리 할 수 있습니다.
파일에서 다음 호출로 ~/.itermocil/foo.yml
,이 명령은 itermocil foo
지정된 폴더에있는 5 개의 탭을 열 것입니다. (이것은 정말 간단한 레이아웃입니다-itermocil은 이것보다 훨씬 더 많은 일을 할 수 있습니다.)
windows:
- name: 1
root: ~/folderA1
layout: even-horizontal
panes:
- focus: true
- name: 2
root: ~/folderA2
layout: even-horizontal
panes:
- focus: true
- name: 3
root: ~/folderA3
layout: even-horizontal
panes:
- focus: true
- name: 4
root: ~/folderA4
layout: even-horizontal
panes:
- focus: true
- name: 5
root: ~/folderA5
layout: even-horizontal
panes:
- focus: true