Saya menggunakan Yosemite 10.10.4, Mac Mini. Saya memiliki skrip shell Bash kecil untuk memulai Quake3 Arena di Wine. Ini bekerja dengan baik.
#¡/bin/bash
cd Desktop/Quake3ISO
hdiutil mount "Quake 3 Arena.iso"
cd Quake3
wine quake3.exe
Baris 2: cd ke folder di desktop saya yang berisi iso, dan juga mengekstrak file dari iso. Saya tahu ini berantakan, tapi itu satu-satunya cara saya bisa membuatnya bekerja.
Baris 3: pasang iso
Baris 4: cd ke folder di dalam yang pertama, disebut Quake3
Baris 5: jalankan "wine quake3.exe" yang hidup di direktori itu. (Desktop / Quake3ISO / Quake3)
Jadi, cobalah ./quake3.sh memasang iso, dan menjalankan program dengan senang hati.
Tapi ... Saya mencoba melakukan hal yang sama di AppleScript, tetapi gagal menemukan file konfigurasi untuk quake3. Itu memuat gambar, dan mengubah direktori, menjalankan anggur dan mulai gempa, tetapi sekarang tidak dapat menemukan direktori konfigurasi, dan mungkin beberapa file lainnya. Direktori konfigurasi juga di bawah folder (Desktop / Quake3ISO / Quake3 / baseq3)
Q3 1.11 win-x86 Nov 24 1999
----- FS_Startup -----
Current search path:
Z:\Users\robert/baseq3
----------------------
Running in restricted demo mode.
----- FS_Startup -----
Current search path:
Z:\Users\robert/demoq3
----------------------
----- CL_Shutdown -----
-----------------------
Couldn't load default.cfg
Saya lupa menambahkan. Applescript saya
tell application "Terminal"
activate
do script "cd ~/Desktop/Quake3ISO"
do script "hdiutil mount ~/Desktop/Quake3ISO/Quake\\ 3\\ Arena.iso"
delay 5
do script "cd ~/Desktop/Quake3ISO/quake3"
do script "wine ~/Desktop/Quake3ISO/quake3/quake3.exe"
end tell
Setelah beberapa percobaan lagi saya menemukan yang berikut. Seperti biasa dengan QuakeIII, CD harus ada di drive. Jadi pemasangan sepertinya memperbaikinya. Selanjutnya, saya telah menginstal di direktori ~ / Desktop / Quake3ISO, tetapi beberapa tahun yang lalu juga melakukan instalasi wine - yang tidak akan berjalan. Tapi barusan saya menyalin semua file di folder ~ / Desktop / Quake3ISO / Quake3 / baseq3 ke folder instal anggur di ~ / .wine / drive_c / Program \ Files / Quake \ III \ Arena / baseq3 folder, dan sekarang saya bisa jalankan Quake langsung dari folder anggur itu.
ie
cd "/Users/robert/.wine/drive_c/Program Files/Quake III Arena"
wine quake3.exe
dan itu berjalan dengan baik.
Saya juga bisa begitu di folder ~ / Desktop / Quake3ISO / Quake3
ie
cd ~/Desktop/Quake3ISO/Quake3
wine quake3.exe
... dan itu berjalan dengan baik.
Jadi ini memberitahu saya bahwa saya perlu membuat AppleScript memahami bahwa perintah yang akan dieksekusi harus dieksekusi di direktori yang diubah. Sehingga ketika program mencari file konfigurasi, ia menggunakan direktori itu sebagai basis, atau direktori root dan bukan direktori basis anggur? Kupikir?
sumber
do shell script
tidakdo script
. Lihatlah: lakukan skrip shell di AppleScriptJawaban:
Setiap
do shell script
perintah memulai shell baru, sehinggacd
tidak memiliki dampak pada perintah berikut. Jadi Anda akan lebih baik dengan berlarisumber