Actualización: iTerm más reciente requiere que cambie la sintaxis, por lo que se vería así:
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
Vea también esta respuesta aquí .
Para versiones anteriores de iTerm:
Tomando el guión de mi respuesta aquí , puedes hacer algo como esto:
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
}
Para explicar lo que está pasando:
Creamos una función de shell llamada launch
, para que pueda ponerla en su ~/.bash_profile
o donde quiera que se ejecute al inicio.
Nos bucle sobre el resultado de la expansión de llaves Bash ~/folderA{1..5}
, que le da ~/folderA1
a través ~/folderA5
.
Llamamos a la biblioteca iTerm2 AppleScript osascript
para crear una nueva pestaña, activarla, iniciar la sesión predeterminada y cd
al directorio especificado.