Vimを使用すると、Apache設定を編集しているときに「スワップファイルxxxはすでに存在しています」というメッセージが表示され続けます。ただし、tmpの作業ディレクトリには表示されません。これを削除するにはどうすればよいですか?
通常、Vimのスワップファイルは隠されています(Unixの隠しファイルは.
で始まります)。隠しファイルだけでなく通常のファイルも表示するには、ls -A
(ニーモニック:A for All)が必要です。スワップファイルが存在するかどうかが表示されます。
これは、編集しようとしていたファイルがディスクに完全に保存されていない場合にのみ発生します。シナリオは次のとおりです。
Vi/vimでファイルがまだ開いているときに、システムを不適切にシャットダウンした。
viの異なる/同じコンソールを介してファイルに同時にアクセスしているとき。
vi/vimは、ファイルがvi/vimで開かれるたびに.swpファイルを作成します。 vi/vimでファイルが開かれるたびに、vi/vimはこのファイルをチェックし、見つかるとこの警告がポップアップします
これは2つの方法で回避できます
「path/of/the/file/you/were/editing/.your_file_name.swp」
私は最初のシナリオについて話しているだけで、そのシナリオだけに安全です。シナリオ2は別のケースです。
編集中のファイルの名前がhttpd.conf
の場合、スワップファイルの名前は.httpd.conf.swp
になります。 ls
引数に-a
を追加しない限り、非表示になります。
ls -a /etc/httpd/conf/
Linuxでスワップファイルを削除するには、次のコマンドを使用します
rm .filename.swp
メッセージには、ファイルへのフルパスが表示されます。次のようにパスをコピーして貼り付けることでrmできます。
rm -f /path/to/the/file