web-dev-qa-db-ja.com

Linuxで1人の連絡先のみのSkypeでチャット履歴を削除する方法

Linuxで1つの連絡先のみのチャット履歴を削除しようとしています。私はsqliteを試しました:

http://www.sqlite.org/download.html

ただし、チャットの会話はしばらくの間削除され、Skypeを再起動した後、返されます。特定の人のチャットを削除する方法はありますか?ありがとう。

1
mistery_girl

sqliteman で実行できます。

Ubuntu Software Centreからsqlitemanをインストールできます。

まず、近くだけでなく、実際にはquitSkype(UnityパネルのSkypeアイコンを右クリックして、終了を選択します)。

次に、Skype sqliteデータベースのバックアップを作成します。お気に入りのファイルマネージャーで$HOME/.skype/YOUR-SYKPE-NAME/に移動し、main.dbファイルを複製します。

Sqlitemanを起動し、ファイル$HOME/.skype/YOUR-SYKPE-NAME/main.dbを開きます。隠しファイルの表示を有効にする必要がある場合があります。ファイルリストのどこかでファイルチューザーを右クリックし、[隠しファイルの表示]をオンにします。

開くと、上部の右側のサイトにSQLエディターが表示されます。上部の緑色の単一矢印をクリックして、次のSQLコマンドを1つずつ実行します。 eachを実行した後、SQL-Editorをクリアし、次のものを貼り付け/編集します。

SKYPE_NAMEは、エイリアス名ではなく、Skypeパートナーの実際のSkype名に置き換えてください!

DELETE FROM messages WHERE
 dialog_partner="SKYPE_NAME" OR
 chatname LIKE "%/$SKYPE_NAME;%" OR
 chatname LIKE "#SKYPE_NAME/$%"
DELETE FROM chats WHERE
 dialog_partner="SKYPE_NAME" OR
 name LIKE "%/$SKYPE_NAME;%" OR
 name LIKE "#SKYPE_NAME/$%"
DELETE FROM chatmembers WHERE
 identity = "SKYPE_NAME" OR
 chatname LIKE "%/$SKYPE_NAME;%" OR
 chatname LIKE "#SKYPE_NAME/$%"
DELETE FROM participants WHERE identity="SKYPE_NAME"
DELETE FROM conversations WHERE
 identity LIKE "%$SKYPE_NAME;%" OR
 identity = "SKYPE_NAME" OR
 identity LIKE "#SKYPE_NAME/$%"
DELETE FROM transfers WHERE partner_handle = "SKYPE_NAME"
DELETE FROM voicemails WHERE partner_handle = "SKYPE_NAME"

Sqlitemanを閉じ(要求された場合、SQLエディターの変更を保存する必要はありません)、Skypeを起動します。 SKYPE_NAMEの履歴はなくなるはずです。

5
cmks