\r\n\r\n
viエディタは慣れないと戸惑うかもしれません。このアプリケーションをうっかり発見してしまった場合、そこから脱出するためには秘密の握手が必要になります。Linux、macOS、その他のUnix系システムでviやvimを終了させる方法を紹介します。
viやvimを使用していて、変更を保存したまま、または保存せずに終了する必要がある場合、その方法を紹介します。
Linuxのコマンドラインを学びたいのであれば、もっと知る必要があります。続きを読むと、viがどのように動作するのか、そしてなぜ終了の指示が異常なのかがわかります。viは重要で強力なツールであり、学習する価値はあります。
viはどこにでもあるため、出くわす可能性が高い。偶然にもviの中に入ってしまうこともあるかもしれません。もしかしたら、誰かに頼まれてLinuxのコンピュータを見るかもしれませんね。crontab-eのようなコマンドを発行すると、viがポップアップ表示されます。意外なことに、誰かがcrontabのデフォルトエディタをviに設定しているのです。
おそらく、viが唯一のエディタ、またはリモートSSHセッションで動作する唯一のエディタであるシステムを管理していて、ユーザーの.bashrcファイルを編集する必要があるのでしょう。
viを起動し、ファイルを開くコマンドは簡単です。vi、スペース、ファイル名を入力します。Enterキーを押してください。起動するプログラムはviかもしれないし、「修正vi」であるvimかもしれない。これは、例えばUbuntuではvimを使うなど、お使いのLinuxディストリビューションに依存します。 この記事の説明はすべてvimにも同様に適用されます。
vi .bashrcviと他のエディタとの大きな違いは、viの起動時にいきなりテキストを入力することができない点です。これは、viがモーダルエディタであるためです。編集は**モード、コマンドの発行はコマンドモードという1つのモードで行います。
インサートモードとコマンドモードの概念に馴染みのない方は、混乱されるかもしれません。コマンドモードで発行できるコマンドの多くは、入力中のファイルに影響を及ぼします。コマンドモードでありながら、誤ってファイルにテキストを入力しようとすると、良い結果は得られません。発行したキーストロークの一部は、コマンドとして認識されます。これらのコマンドは、行の削除や分割、カーソルの移動、テキストの削除を行うことができます。
また、何を入力しても、エディターを終了したり、終了させたりする方法が見つからないのです。一方、ファイルが非常に分かりにくくなり、不規則に見えるビープ音でイライラするようになります。
達成したいタスクを実現するために、viを適切なモードに切り替える必要があります。
コマンドモードは、vi起動時のデフォルトモードです。よく分かっていない限り、入力し始めるしかないでしょう。たまたま「i」キーや、**モードを呼び出す他の10個のキー(a、a、c、i、o、R、s、s)を押すと、突然、自分が入力しているものが表示されるのです。これで**モードです。
これは、矢印キーの一つを押すまでは、改善されたように感じるかもしれません。このようにすると、A、B、C、Dのいずれかが空白の改行で唯一の文字として表示されます。を文書の先頭に表示します。
大丈夫、私たちがついていますよ。何をすればいいのかが分かれば、とても簡単です。Escでコマンドモード、iで**モードと、この2つのキー操作を覚えておいてください。
エディターを終了するには、コマンドモードにして正しいコマンドを入力する必要があります。
コマンドモードに入るには、Escキーを押してください。何も見えません。何度か打ち直す。終了キーを押したときにビープ音が鳴れば、コマンドモードになっています。ビープ音で "Escを押すのをやめなさい、コマンドモードになっていますよ "と教えてくれます。Escを押したときに「ピッ」と音が鳴れば大丈夫です。
コロン、"q"、エクスクラメーションマークをスペースなしで入力します。この3つの文字は、端末の左下に表示されるはずです。表示されない場合は、ピーッと音がするまでEscキーを押して、もう一度試してください。表示されたら、Enterキーを押してください。
:q!このコマンドでは、qはquitの略です。感嘆符で強調することで、まるで「辞めろ!」と叫んでいるような感じになります。" と書いてあるのを見ると、少しは気が楽になるかもしれませんね。
また、感嘆符は、ファイルに加えた変更を保存しないようにviに指示します。viで漫然とやっていて、何をやっているのかわからないという人は、おそらくそのダメージを保存したくないのでしょう。
コマンドラインに戻ったら、ファイルが変更されていないことを再度確認する必要があるかもしれませんが、これは次のコマンドで行うことができます。
cat .bashrc | lessviを終了するときに、「No writes since last change」というメッセージが表示されたら、これはコマンドの感嘆符を見落としたということです。終了して保存したい変更が失われるのを防ぐため、viは変更を保存する機会を提供します。再発行するだけです:q! 感嘆符を使ってviを終了し、変更内容を破棄してください。
ファイルへの変更に問題がなければ、コマンド:wq(write and quit)で終了し、変更内容を保存することができます。続行する前に、画面編集をファイルに書き込むことを十分に納得してください。
コロン、w(書き込み)、q(終了)を入力します。端末の左下に表示されたら、Enterキーを押してください。
:wqviを使うのは、ピアノを使うのに似ている。黙って待っているだけではダメで、もっと練習しないといけない。編集のプレッシャーがあるときは、冷静に座って学ぼうとするのはNGです。初めてピアノの前に座って、初々しいコンサートを聴くようなやりがいがあります。
viの機能の多くは、多くのキーの組み合わせから生まれ、それぞれが共通の編集タスクを実行します。それはそれでいいのですが、覚えて、練習して、マッスルメモリーの一部になっていなければ、その恩恵にあずかることはできないのです。
それまでは、もしviで重要なファイルを見ていたら、q! 潔く退散してください。大切なファイルに感謝されることでしょう。