起動中のアプリを一括終了するコマンド教えて下さい
macで起動中アプリを一括終了するコマンドを教えてください。
"killall アプリ名"では一つずつしか終了出来ない認識で、全アプリを終了させたいです。
よろしくお願い致します。
macで起動中アプリを一括終了するコマンドを教えてください。
"killall アプリ名"では一つずつしか終了出来ない認識で、全アプリを終了させたいです。
よろしくお願い致します。
killall は複数のアプリを終了することができます。ただ、アプリケーションによっては不正終了となってしまうので、できるだけやらない方が良いです。
JXA (JavaScript for Automation) や AppleScript などであればもっと優しく終了させることができます。例えば、こんな感じのスクリプトを Terminal から実行すれば良いと思います。
#!/usr/bin/osascript -l JavaScript
'use strict';
function run() {
const filter = {_and:[{visible:true},{_not:[{_or:[{name:'Finder'},{name:'Terminal'}]}]}]};
const procs = Application('System Events').processes.whose(filter);
const apps = procs.name();
apps.map(a => Application(a).quit());
return apps;
}
コードを若干変更しました。
#!/usr/bin/osascript -l JavaScript
'use strict';
function run() {
const filter = {_and:[{backgroundOnly:false},{_not:[{_or:[{name:'Finder'},{name:'Terminal'}]}]}]};
const procs = Application('System Events').processes.whose(filter);
const apps = procs.name();
apps.map(a => Application(a).quit());
return apps;
}
ちょっと補足しときますね。
前掲のコードは Script Editor ではなく TextEditor などの標準テキストエディタにコピペして標準テキスト形式 (改行:LF、テキストエンコーディング:UTF-8) で保存してください。
で、Terminal から chmod コマンドで実行権限を与え、パスの通った場所に置けばコマンドとして使えます。
ファイル名を「quitapps」とした場合、実行は Terminal からこんな感じ。
quitapps
迅速なご回答ありがとうございます!!
こちら本日試してみます!勉強になります!
すみません。ちょっと訂正。
[誤] TextEditor
[正] TextEdit
起動中のアプリを一括終了するコマンド教えて下さい