回答編集履歴

2

微修正

2017/08/12 04:59

投稿

fiwa
fiwa

スコア1192

test CHANGED
@@ -1,6 +1,4 @@
1
- ターミナルでlauchctlから目的の.plistをロードする前に、`launchctl setenv LANG ja_JP.UTF-8`と打ってみて下さい。
1
+ ターミナルでlauchctlから目的の.plistをロードする前に、`launchctl setenv LANG ja_JP.UTF-8`と打ってみて下さい。以下のような簡単な.plistでテストしたら私のところではそれで動いているようですが...
2
-
3
- 以下のような簡単な.plistでテストしたら私のところではそれで動いているようですが...
4
2
 
5
3
 
6
4
 
@@ -56,9 +54,7 @@
56
54
 
57
55
  少し追加情報:
58
56
 
59
- 私の環境の場合、指定したパスにスクリプトが見つからないと"Service exited with abnormal code: 2"、環境変数でLANGを指定していない場合は "Service exited with abnormal code: 1" と出るようです。いずれの場合もStandardErrorPathで指定したエラーログにはもう少し詳しい情報が出てきます。(前者の場合が "Errno 2] No such file or directory"、後者では "UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)" となっています。)
60
-
61
- ターミナルから`launchctl setenv LANG ja_JP.UTF-8`と打って目的のスクリプトが実行されるなら、plistに"EnvironmentVariables"キーを書いておけばよいようです。
57
+ 私の環境の場合、指定したパスにスクリプトが見つからないと"Service exited with abnormal code: 2"、環境変数でLANGを指定していない場合は "Service exited with abnormal code: 1" とコンソールのsystem.logには出るようです。いずれの場合もStandardErrorPathで指定したエラーログにはもう少し詳しい情報が出てきます。(前者の場合が "Errno 2] No such file or directory"、後者では "UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)" となっています。)ターミナルから`launchctl setenv LANG ja_JP.UTF-8`と打って目的のスクリプトが実行されるなら、plistに"EnvironmentVariables"キーを書いておけばよいようです。
62
58
 
63
59
  ```plist
64
60
 

1

追加情報

2017/08/12 04:59

投稿

fiwa
fiwa

スコア1192

test CHANGED
@@ -49,3 +49,65 @@
49
49
  ```
50
50
 
51
51
  あと、上の例のようにStandardErrorPathとかStandardOutPathを指定しておくと、運が良ければもう少し詳しいことが判るかも知れません。
52
+
53
+
54
+
55
+ ------
56
+
57
+ 少し追加情報:
58
+
59
+ 私の環境の場合、指定したパスにスクリプトが見つからないと"Service exited with abnormal code: 2"、環境変数でLANGを指定していない場合は "Service exited with abnormal code: 1" と出るようです。いずれの場合もStandardErrorPathで指定したエラーログにはもう少し詳しい情報が出てきます。(前者の場合が "Errno 2] No such file or directory"、後者では "UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)" となっています。)
60
+
61
+ ターミナルから`launchctl setenv LANG ja_JP.UTF-8`と打って目的のスクリプトが実行されるなら、plistに"EnvironmentVariables"キーを書いておけばよいようです。
62
+
63
+ ```plist
64
+
65
+ <?xml version="1.0" encoding="UTF-8"?>
66
+
67
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
68
+
69
+ <plist version="1.0">
70
+
71
+ <dict>
72
+
73
+ <key>EnvironmentVariables</key>
74
+
75
+ <dict>
76
+
77
+ <key>LANG</key>
78
+
79
+ <string>ja_JP.UTF-8</string>
80
+
81
+ </dict>
82
+
83
+ <key>Label</key>
84
+
85
+ <string>test.teratail.com</string>
86
+
87
+ <key>ProgramArguments</key>
88
+
89
+ <array>
90
+
91
+ <string>/usr/local/bin/python3.6</string>
92
+
93
+ <string>/Users/fiwa/Desktop/test.py</string>
94
+
95
+ </array>
96
+
97
+ <key>StandardErrorPath</key>
98
+
99
+ <string>/Users/fiwa/Desktop/error.log</string>
100
+
101
+ <key>StandardOutPath</key>
102
+
103
+ <string>/Users/fiwa/Desktop/out.log</string>
104
+
105
+ <key>StartInterval</key>
106
+
107
+ <integer>30</integer>
108
+
109
+ </dict>
110
+
111
+ </plist>
112
+
113
+ ```