ユーザーディレクトリですべての一時ファイルを見つけて削除します。

ユーザーディレクトリですべての一時ファイルを見つけて削除します。

私はvimを大量に使用していますが、私が住んでいる地域では停電が頻繁に発生します。その結果、*.swp私のコンピュータにたくさんのファイルが散らばってしまいました。

拡張子またはシステム全体のrmすべてのファイルを削除するコマンドエイリアスが必要です。.swp~.netrwhist.log.bak(または少なくとも私のホームディレクトリに)。私がここにいても~/Desktop

これをどのように実装しますか?

ベストアンサー1

これにより、名前.swpまたは他の場所で終わるホームディレクトリ内のすべてのファイルが削除されます。プロンプト、確認、修復がなく、ファイルが永遠に消えた。~.netrwhist.log.bak

find ~ -type f \( -name '*.swp' -o -name '*~' -o -name '*.bak' -o -name '.netrwhist' \) -delete

(危険なので、わざと省略しました*.log。一時ファイルの一般的な拡張子ではなく、その名前を持つ一時ではないファイルがたくさんあります。)

オペレーティングシステムがLinuxでない-delete場合-exec rm {} +

次のように設定して、スワップファイルをディレクトリに配置するようにVimを設定する必要があります。directoryオプション:

set dir=~/tmp/vim-swap-files//,/var/tmp//

まずディレクトリを作成します。最後に、//スワップファイル名に元のファイルのディレクトリの場所を含めて、別のディレクトリにある同じ名前のファイルが競合を引き起こさないようにします。

次のコマンドを使用して、バックアップファイルに対して同じ操作を実行できます。backupdirオプション、あまり意味がなくてもね。

Emacsを使用している場合は、以下を設定してください。auto-save-file-name-transforms各ファイルがディレクトリを指すようにします。

(setq auto-save-file-name-transforms
      '("\\`.*\\'" "~/tmp/emacs-auto-save-files/\\&" t))

おすすめ記事