2013-10-25 14 views
6

Mavericks'e yükseltildi ve şimdi lanse/Lingon Ruby komut dosyalarını başlatamıyor.Mavericks ve Ruby ile Launchd Kullanımı

com.apple.launchd.peruser.501[169] (craig.logging[754]): Exited with code: 1 

bir: Ben çalıştırılabilir dosyalar ve ilk satırları Ancak

#!/usr/bin/ruby 

ayarlı, ben konsolda aşağıdaki hatayı almaya devam (+ x chmod kullanarak) olmak belirledik izinler hatası, ancak düzeltmek veya değiştirmek için izinler hakkında hiçbir fikrim yok. Komut, ruby ​​ile terminalde iyi çalışır.

Bu beni deli ediyor.

Güncelleştirme: Soruna neden olan Ruby komut dosyaları, çıktılarını başka bir dosyaya, örneğin Dropbox'ımma yazıyor. Ama ben bu dosyaları yazmak için yönetici ayrıcalıklarına sahip olan ben kendim olarak launchd dosyalarını çalıştırıyorum. Neyin yanlış gittiğine dair bir fikir yok ...]

Güncelleştirme 2: Terminali başlatmak ve komutlarımı çalıştırmak için Applescript'i kullanmaya başladım, ancak bu oldukça beceriksiz ve yetersiz. Başlangıcın, çıktısını neden dosyalara yazan komut dosyalarını çalıştırmayacağına dair herhangi bir fikri var mı? Ya da yapabilecekleri betikleri olan biri var mı?

Güncelleştirme 3: Kodlama sorunları nedeniyle hatalar tetikleniyordu. Komut dosyalarının çalışması için özellikle file.open (path/to/file, kodlama: 'UTF-8') ayarlamam gerekiyordu.

Herkese teşekkürler.

+0

Diskutil tamirini denediniz mi?/ – Jon

+0

Evet — hatayı değiştirmediniz. – craigeley

+0

LaunchDaemon çalışmamdan önce makineyi onarmayı ve makineyi yeniden başlatmam gerekiyordu – Jon

cevap

1

Aynı problemi çeşitli aralıklarla çalıştırmak üzere ayarladığım birkaç Ruby komut dosyasıyla bir Mavericks kutusunda da vardı. İşletim sistemi yükseltilmiş olan bu makinenin başarısız olmasına rağmen, Mavericks ile birlikte gelen yeni MacBook Pro'mn, aynı betikleri launchd'u düzgün olarak programlayabileceğini buldum. Makineyi silip Maverick'leri (ve diğer her şeyi) sıfırdan yeniden kurdum ve daha sonra komut dosyalarını programlamaya başladım.

En hassas cevap değil, biliyorum ama Worked For Me ™.

1

Neden hala emin değilim, ancak kodlama sorunları nedeniyle izin hataları tetikleniyordu. Çalışmaları için özellikle şunu yapmam gerekiyordu:

.

Yardımlarınız için herkese teşekkürler.