[Mac][CLI] slack-cleaner をアップデートする
以前 Mac のコマンドラインから Slack のメッセージを一括削除する方法について書いた。
Slack でチャンネル内のメッセージを一括削除する – with a Christian Wife
https://wacw.cf/2018/04/23/delete-all-messages-in-slack/
slack-cleaner の挙動がおかしい気がしたので、アップデートすることにした(後で分かったが、挙動がおかしいのは気のせいだった)。
最初インストールしたのは以下のページのものだ。
kfei/slack-cleaner: Bulk delete messages and files on Slack
https://github.com/kfei/slack-cleaner
インストールのコマンドは以下。
$ sudo pip install slack-cleaner
インストールされるのは v0.3.0 で現在は開発が止まっている模様。しかし、以下のページはまだ開発が続いているようだ。こちらをインストールし直すことにした。
sgratzl/slack-cleaner: delete slack message and files. An improved version is at: https://github.com/sgratzl/slack_cleaner2
https://github.com/sgratzl/slack-cleaner
環境:macOS Catalina Version 10.15.3
(1)現在の slack-cleaner を削除する。
$ sudo pip uninstall slack-cleaner
(2)新しい slack-cleaner をインストール。
$ sudo pip install -e git+https://github.com/sgratzl/slack-cleaner.git#egg=slack-cleaner
これで v0.6.3 がインストールされた。
***
改めて削除のコマンドをメモしておく。
特定のパブリックチャンネルの全ユーザーの投稿を削除するには以下。
$ slack-cleaner --token <TOKEN> --message --channel <CHANNEL> --user "*" --perform --rate 1
特定のパブリックチャンネルの bot による投稿を削除するには以下。
$ slack-cleaner --token <TOKEN> --message --channel <CHANNEL> --bot --perform --rate 1
プライベートチャンネルの場合は、上のコマンドの channel を group に変える。特定のプライベートチャンネルの全ユーザーの投稿を削除するには以下。
$ slack-cleaner --token <TOKEN> --message —group <CHANNEL> --user "*" --perform --rate 1
特定のプライベートチャンネルの bot の投稿を削除するには以下。
$ slack-cleaner --token <TOKEN> --message —group <CHANNEL> --bot --perform --rate 1
2020 年3月 10 日より前の、特定のプライベートチャンネルの全ユーザーの投稿を削除するには以下。
$ slack-cleaner --token <TOKEN> --message —group <CHANNEL> --user "*" --perform --rate 1 --before 20200310
参考:
[Slack] Channelのメッセージを一括削除 – Qiita
https://qiita.com/Koutetsu666/items/cab999a1e939decf5751