2016-04-14 6 views
1

Iterm2公式サイトからこのbashスクリプトを入手しました。node2sからiterm2バッジを設定するスクリプトを実行するにはどうすればいいですか?

printf "\e]1337;SetBadgeFormat=%s\a" $(echo "text" | base64)

私はそれが何を本当に明確でエラーがない、怒鳴るなどの幹部を試してみましたが、iterm2バッジ

var exec = require('child_process').exec; 
exec('printf "\e]1337;SetBadgeFormat=%s\a" $(echo "text" | base64)'); 
+0

の設定に失敗しましたあなたが達成しようとしているが、何が起こっているかについてもっと知りたいなら、コールバックを追加する exec( 'printf "\ e] 1337; SetBadgeFormat =%s \ a" | "text" | {} //その後、console.logこれらの }});}};関数(エラー、stdout、stderr) – aray12

+0

@ aray12これらのもののログは 'null '、'' e '1337; SetBadgeFormat = ODA4MQo = a''、 '' ''です。 スクリプトを外部ファイルに置くと、 'setBadgeFormet.sh'を開き、ノード・スクリプトを 'exec( './ setBadgeFormet.sh')'に変更します。 –

+0

解決策を見つけてうれしく思います。私は正直なところ、なぜそれが物事を変えるのか分かりません – aray12

答えて

1

setBadgeFormat.js =>

#!/usr/bin/env node 

var rawBadgeFormat = 'test' 
var base64BadgeFormat = new Buffer(rawBadgeFormat).toString('base64') 
var setBadgeFormatCmd = 'printf "\\e]1337;SetBadgeFormat=' + base64BadgeFormat + '\\a"' 
require('child_process').exec(setBadgeFormatCmd, function(error, stdout, stderr) { 
    if (error) console.log(error); 
    process.stdout.write(stdout); // this line actually do the trick 
    process.stderr.write(stderr); 
}); 
関連する問題