Czy można otworzyć plik za pomocą wiersza polecenia w OSX, a następnie otworzyć inny, ale dopiero po zakończeniu ładowania pierwszej aplikacji?

2

Mam skonfigurowane pokazy na żywo za pomocą Abletona i Reason. Zazwyczaj otwieram plik Ableton, czekam, aż się załaduje, a następnie otwieram przyczynę. Powodem tego jest to, że rozum działa jako niewolnik Abletona, więc Ableton musi zakończyć ładowanie, zanim zacznie się rozum.

Próbowałem tego (z pojedynczymi i podwójnymi ampersandami), ale chce otworzyć oba z nich jednocześnie.

open "~/first_file.als" & open "~/second_file.rns"

Jeśli zamiast tego można to zrobić za pomocą AppleScript, chętnie to zrobię. Używam Alfreda do uruchomienia polecenia.

Dzięki!

Martin Boynton
źródło
1
Główny problem polega na tym, że nie można stwierdzić, kiedy aplikacja zakończy ładowanie pliku. Polecenie otwarte nie blokuje i po prostu odpala. -WPrzełącznik pozwoli blokować aż aplikacja zostanie ponownie zamknięty. Mogę tu myśleć tylko o ręcznych wyłącznikach czasowych.
slhck 12.04

Odpowiedzi:

2

spróbuj pozwolić komendzie spać przez kilka sekund (lub jak długo trwa ładowanie ableton)

to znaczy..

#!/bin/bash

open "~/first_file.als" 
sleep 10
open "~/second_file.rns"
jessh
źródło
1

Możesz użyć AppleScript - jego otwarte polecenia blokują skrypt, dopóki aplikacja nie otworzy pliku.

osascript -e 'tell app "Live"
open POSIX file ((system attribute "HOME") & "/Audio/Template Project/Template.als")
end
tell app "Finder" -- open in the default application
open POSIX file "/Library/Desktop Pictures/Beach.jpg" as alias
end'
Lri
źródło
0

Możesz to osiągnąć za pomocą jednej linii.

open "~/first_file.als" ; sleep 5 ;  open "~/second_file.rns"

UWAGA: Dostosuj czas snu zgodnie z potrzebami.

Niestety sen może być konieczny w zależności od tego, co naprawdę chcesz osiągnąć.

E1Suave
źródło