私はログや設定ファイルを見るときに読み取り専用にしたいので、主にlessを使います。
しかし、時にはVimモードに入り、読み取り専用で必要なファイルを変更することができます。どうすればいいのかわかりません。 (おそらく右クリックして貼り付けることができますが、それでも少ないです)。しかし、最も重要なのは、変更を加えずにこのモードを終了する方法がわからないことです。通常:q!動作しません。動作しません。終了します。
私が受け取ったメッセージを入力しようとすると、次のようになります:quit
。
E37: No write since last change (add ! to override)
Ctrl Cしかし、うまく:quit<Enter>
いきません:
Type :quit and press <Enter> to exit Vim
これはコンソールで見られるものの一部ですが、制御することはできません。時々挿入モードに入ってファイルを修正していますが、どうやって停止するのかわかりません。
検索してみると、viではなくviの指示が表示され、コマンドは機能しませんでした。これまでのところ、私の唯一の解決策は、切断し、何も損傷しないことを望むことです。
最後に、これが再び発生しないように、より短い時間でこの機能をオフにする方法はありますか?
更新:いよいよ出かけることができます。さっきのように入力しましたが:q!
下段に「録音中」と浮かびます。また、入力を開始すると挿入モードに切り替わります。私はまだそれに入る方法や録音プロンプトを取得する方法がわかりません。
roaimaが提案したように、私は以前持っていたマニュアルページを検索しました。v
編集モードに入ることがわかりました。 ctrl + vが機能せず、右クリックも機能しないため、vを押す方法がわかりません。また、vを使用すると、1秒間点滅してページ下部にロードされます。私はすぐに入力することはできず、終了することもできないことに気づきました:q!
。 Escを試してからCtrl + Cを押して:quitプロンプトを表示し、ここで:q!が機能しました。どうやら誤ってこのモードに入ったのか、どうやって安全に抜け出すのか、まだ恋しい感じだ。標準入力では編集が機能しないことがわかったので、誤って編集しないようless filename | less
にするための回避策です。
ベストアンサー1
less()のドキュメントを使用すると、man less
入力するキーの組み合わせvi
(または他の好みのエディタ)が次のようになることがわかりますv。
v
現在表示しているファイルを編集するには、エディタを呼び出します。VISUAL
定義または定義されていない場合、エディタは環境変数から取得されます。EDITOR
定義されていないか、VISUAL
定義されていない場合、デフォルトは "vi
"です。以下のヒントセクションの議論も参照してください。VISUAL
EDITOR
LESSEDIT
less
/
のように、を使用してテキストを検索できますvi
。 (/vi
Enterこれら2つの文字の次のインスタンスが見つかります。n
次のインスタンス検索を使用してください。)常に、またはZZ終了:q!を使用してくださいvi
。
で述べたようにコメントless
環境変数を設定してデフォルトのエディタ設定を上書きできますLESSEDIT
。
デフォルトは次のとおりです
LESSEDIT
。%E ?lm+%lm. %g
これはエディタ名、a
+
、行番号、最後にシェルエスケープファイル名に展開されます。
たとえば、次はエディタを設定しますfalse
。つまり、ファイルの編集には使用できませんv。
LESSEDIT=false less /var/log/syslog
また、less
使用することができます標準入力、編集できません。ただし、これははるかに効率的ではなく、大容量ファイルの場合はメモリを消費する可能性があります。
less </var/log/syslog
設定を調べることもできますLESSSECURE=1
。