Linuxでテキストエディタを使用する方法を学ぶ必要性は議論の余地がありません。 すべてのシステム管理者およびエンジニアは、構成(プレーンテキスト)ファイルを日常的に処理します。ほとんどの場合、これは、コマンドラインインターフェイス(次のような)から1つ以上のツールを使用して純粋に実行されます。 ナノ, vim、 また emacs).
その間 ナノ おそらく新しいユーザーに適していますが、 vim また emacs は、その高度な機能により、経験豊富なユーザーに最適なツールです。
しかし、このテキストエディタの使用方法を学ぶことが最優先事項である理由はさらにもう1つあります。CLIのみのサーバーにぶつかるか、実行することができます。 GUIベースのLinuxサーバーまたはデスクトップのデスクトップマネージャーの問題に対処し、それを調べて構成ファイルを編集するための唯一のリソースはコマンドです ライン。
この記事とこの2記事シリーズの次の記事の間に、レビューします 15のヒントとコツ あなたの強化のために vim スキル。 あなたはすでにこのテキストエディタに精通していることを前提としています。 そうでない場合は、先に進む前に、自分に有利に働き、vimに精通してください。 フルテキストエディタとしてvi / vimを使用する方法 vimから始めるための非常に詳細なガイドについては。
パート2: 8つの興味深い「Vi / Vim」エディターのヒントとコツ
vimを起動したら、を押します F1 または使用する :NS NS 元 オンラインヘルプに入るモード。 特定のセクションまたはトピックにカーソルを置いてから押すと、そのセクションまたはトピックにジャンプできます。 Ctrl +]
(NS、次に閉じ角括弧)。
完了したら、を押します Ctrl + t
前の画面に戻ります。 または、次のコマンドで特定のサブジェクトまたはコマンドを検索することもできます。 :NS
.
例えば、
:h x
のヘルプが表示されます NS(消去) 指図:
と
:h代用。
についてのヘルプを表示します 代わりの コマンド(この記事の最後のヒント)。
1画面よりも大きいファイルを編集していることに気付いた場合は、によって提供される機能に感謝します。
マーク. vimのマークはブックマークと考えることができます。マークをどこかに配置すると、すばやく簡単に戻ることができます。 あなたが編集しているとしましょう 300ワード 構成ファイルと何らかの理由で行を繰り返し切り替える必要があります 30 と 150 例えば。まず、行に移動します #30 入力することによって :30 NS 元 モードに戻り、コマンドモードに戻ってヒットします ma (NS、 それから NS)という名前のマークを作成します "NS" 列をなして 30.
次に、行250に移動します( :250 exモードで)そしてヒット `a
(バッククォート、その後 NS)マークに戻る NS 列をなして 30. 小文字と大文字を使用してvimのマークを識別することができます(このプロセスを繰り返して、という名前のマークを作成します NS 列をなして #250).
あなたはであなたのマークを見ることができます
:マークaA。
ご覧のとおり、各マークは、行だけでなく、ファイル上の特定の行/列の位置によって参照されます。
シェルスクリプトを編集していて、前の開発者がインデントに関してかなりお粗末だったことに気付いたとします。 いくつかのvimコマンドで修正する方法を見てみましょう。
まず、ブロックの先頭にカーソルを置いてビジュアルブロックを選択し、を押します。 Ctrl + v (NS、 それから v).
次に、を押します .
(ドット)いずれかのインデントを繰り返すコマンド。 選択したブロックは、1回のキーストロークで右または左に移動します。
を使用する別の古典的な例 ドット コマンドは、一連の単語を削除する必要がある場合です。削除する最初の単語にカーソルを置き、を押します。 dw. 次の単語を削除し続けるには、を押します .
(繰り返すよりも短くて簡単 dw 数回)。
キーボードレイアウトでファイルに特別なUnicode文字を簡単に挿入できない場合、または 慣れ親しんだ言語設定とは異なる言語設定のサーバーの前にいると、このトリックが発生します ハンディ。
これを行うには、を押します Ctrl + v 挿入モードで文字が続く u 挿入する文字の16進数コード。 あなたはチェックすることができます Unicodeチャート 特殊文字とそれに対応する数値コードのリストについては。
例えば、
Ctrl + vに続いて | 戻り値 |
u0040 | @ |
u00B5 | μ |
u20AC | € |
vimで編集しているファイルに外部コマンドの出力を直接挿入する必要がある場合があります。 たとえば、私はよく次の名前の変数を作成します DIR スクリプト内で、後でスクリプトで使用するために、スクリプトが存在するディレクトリへの絶対パスを格納します。 それを行うために、私は使用します:
:NS! pwd
NS 元 モード。 したがって、現在の作業ディレクトリが挿入されます。
別の例:スクリプトのどこかでデフォルトゲートウェイを使用する必要がある場合は、次のようにvimを終了せずに現在のファイルに簡単に挿入できます。
:!r ip route show | grepのデフォルト| カット-f3 -d ""
現在編集しているファイルに別のファイルの内容を追加する必要がある場合、構文は前のヒントと同様です。 感嘆符を省略すれば、準備は完了です。
たとえば、の内容をコピーするには /etc/passwd:
:r / etc / passwd。
このヒントは、構成ファイルを変更する必要があるが、元のファイルを「」にロールバックするために保持したい場合に役立つことがあります。工場出荷時の設定" いわば。
実話. 試験中に、ランダムなデータを含む大きなテキストファイルを開くように求められました。 割り当てられたタスクは、単語の各出現箇所を置き換えることで構成されていました グローブ と 地球 (はい、私はまだ正確な言葉を覚えています)。 に精通している人のために sed、これはベルを鳴らします–で 元 モード、タイプ:
:%s / old / new / g。
どこ 年 検索するパターンであり、 新着 それを置き換える文字列です。
上記の場合、私は以下を使用しました:
:%s / Globe / Earth / g。
仕事を成し遂げるために。
では、置換を行う前にプロンプトを表示したい場合はどうでしょうか。 簡単。 追加するだけです NS 上記のコマンドの最後に、次のようになります。
:%s / old / new / gc。
パターンの出現箇所が強調表示され、新しい文字列に置き換えるかどうかを尋ねられます。
:%s / gacanepa / me / gc。
どこ
この記事では、いくつかのレビューを開始しました vimのヒントとコツ テキスト編集スキルを向上させます。 他にもいくつか考えられるかもしれませんので、以下のフォームを使用して共有してください。このvimシリーズの次の最後の記事で取り上げることを検討します。 あなたからの便りを楽しみにしています。