web-dev-qa-db-ja.com

「vi」が既に開いていると報告したときにファイルを開く方法は?

何らかの理由で、vi .profileを編集しようとすると、ターミナルは、編集モードで.profileを既に持っていることを通知し続けます。

E325: ATTENTION
Found a swap file by the name ".profile.swp"
          owned by: smaranh   dated: Fri Apr  6 09:46:45 2012
         file name: ~smaranh/.profile
          modified: YES
         user name: smaranh   Host name: ubuntu
        process ID: 4394
While opening file ".profile"
             dated: Fri Apr 27 10:35:32 2012
      NEWER than swap file!

(1) Another program may be editing the same file.  If this is the case,
    be careful not to end up with two different instances of the same
    file when making changes.  Quit, or continue with caution.
(2) An edit session for this file crashed.
    If this is the case, use ":recover" or "vim -r .profile"
    to recover the changes (see ":help recovery").
    If you did this already, delete the swap file ".profile.swp"
    to avoid this message.
".profile" 23 lines, 713 characters
Press ENTER or type command to continue

そこで、上記のメッセージが表示していたプロセスを強制終了しようとしましたが、No such processが表示され続けます。

次にps -ef | grep 4394を使用して、この出力を得ました。

smaranh   3491  3375  0 10:08 pts/3    00:00:00 grep --color=auto 4394

そこでkill -9 3491を試しましたが、それでもNo such processが得られました。何が間違っているのか分かりませんか?

すでに開いている.profileを閉じるにはどうすればよいですか?

10
Sam007

これは、エディタがおそらくクラッシュしたか、強制終了されたため、まだ存在している古いスワップファイルです。安全に消去できます。

rm .profile.swp
15
Eric Carvalho