Linuxシステムの入出力管理とvimの共通機能の詳細な説明

Linuxシステムの入出力管理とvimの共通機能の詳細な説明

####システム内の入出力の管理####

1. システムの入力と出力のリダイレクトを理解する

入力リダイレクトはファイルをコマンドにインポートすることを指し、出力リダイレクトは元々画面に出力されるデータ情報を指定されたファイルに書き込むことを指します。

2. 入力シンボルと出力シンボルを管理する

##出力リダイレクト

> ## 正しい入力をリダイレクトする
2> ##エラー出力をリダイレクトする
&> ## すべての出力をリダイレクトする

知らせ:

リダイレクトにより元のファイルの内容が上書きされます

>> ##元のファイルの内容は上書きされません
2>> ##エラー出力、上書きなし
&>> ##すべて出力、上書きなし

####コマンドを検索####

指定されたディレクトリ内のファイルを検索するために使用されます。引数の前の文字列は、検索するディレクトリの名前として解釈されます。このコマンドを使用するときにパラメータを設定しないと、find コマンドは現在のディレクトリ内のサブディレクトリとファイルを検索します。見つかったサブディレクトリとファイルがすべて表示されます。

一般的なオプション:

-group<グループ名>: 指定されたグループ名に一致するファイルまたはディレクトリを検索します。

-name<テンプレート スタイル>: ファイルまたはディレクトリを検索するためのテンプレート スタイルとして文字列を指定します。

-nouser: ローカル ホストのユーザー識別コードに属さないファイルまたはディレクトリを検索します。

-user<所有者名>: 指定された所有者名を持つファイルまたはディレクトリを検索します。

次に例を示します。

   

####パイプラインの応用####

1. パイプラインの役割

「|」パイプの機能は、前のコマンドの出力を次のコマンドの入力に変換することです。

知らせ:

パイプは正しい出力のみを通過させます

パイプラインを通った出力は入力となり、入力となったこれらの出力は 2 番目のコマンドによって処理されます。

出力を保存する必要がある場合は、出力をコピーする必要があります。使用するコマンドは「tee」です。

この実験は一般ユーザーを対象に実行されます:

find /etc/ -name passwd | wc -l ##エラー出力はパイプできないため、結果 2 が表示されます find /etc -name passwd 2>&1|wc -l ##出力番号 2 は "2>&1" によって番号 1 に変換されるため、結果 19 が表示されます
find /etc -name passwd 2>&1|tee file |wc -l ##出力のコピーをファイルに保存し、行数を数えます

要約: 2>&1 と &> の違い

&>はリダイレクト出力なので、リダイレクト先を指定する必要があります。

2>&1 リダイレクトなし、またはfindの出力コマンドがパイプ文字を使用して入力に変換されます

   

####入力リダイレクト####

cat >ファイル <<EOF
こんにちは
世界
終了

####vim の共通機能##

1. vimモード

コマンドモード

ファイルを閲覧したり、一時的にvimの動作モードを変更したり、文字をバッチ処理したりします。

挿入モード

ファイルの内容を編集する

終了モード

vimプログラムを終了する

2. コマンドモード

1) vimの動作を調整する

vimプログラムで

:調整パラメータを設定する

パラメータは次のとおりです。

:set nu ##各行の前に行番号を表示する

:set nonu ##行番号表示をキャンセル

:set mouse=a ##マウスを表示

:set cursorline ##行を表示

知らせ:

vim プログラムで設定された vim 作業モードは一時的なものであり、vim を閉じると復元されます。

vimの動作方法を永続的に保存したい場合は、vim設定ファイル/etc/vimrcを編集(追加または削除)する必要があります。

2) 文字の検索

/キーワード

nは下向きに一致する

N 上方一致

3) キャラクター管理

ええ

yl ##文字をコピー <C-F12>

y3l ##3文字をコピー

yw ##単語をコピー

y3w ##3単語をコピー

yy ##1行をコピー

y3y ##3行コピー

d

dl ##文字を削除する

d3l ##3文字を削除

dw ## 1 単語を削除

d3w ##3つの単語を削除

dd ## 1行削除

d3d ##3行削除

c

cl ##1文字を切り取る

c3l ##3文字を切り取る

cw ##1単語を切り取る

c3w ##3単語をカット

cc ## 1行カット

c3c ##3 行を切り取ります***"注意***: 切り取った後、vim は挿入モードに入ります。貼り付ける場合は、[esc] を押して挿入モードを終了し、p を押して貼り付けます"

p ##貼り付け

u##元に戻す

ctrl+r ##やり直し

4) vim 視覚化モード

ctrl + v ##このモードでは、エリア操作を選択して文字を一括で追加できます

ctrl + v 文字を追加する列を選択 ---> 大文字の I を押す ---> 文字を追加する ---> [esc] を押す
5) 文字の置き換え

:%s/置換する文字/置換する文字/g

:%s/:/@/g ##全文を@に置き換えます

:1,5s/:/@/g ##1行目から5行目を@に置き換えます
知らせ:

%s はすべての行を示します

gはすべての列をマークします

   

6) vimの画面分割機能

ctrl+w s ##画面を上下に分割

ctrl+w v ##画面を左右に分割

ctrl+w c ##カーソルがある画面を閉じる

ctrl+w 上、下、左、右 ## カーソルを指定した画面に移動する

:sp file2 ##現在のファイルとfile2を同時に編集する

7) コマンドモードでのカーソル移動

gg ##カーソルをファイルの最初の行に移動する

G ##カーソルをファイルの末尾に移動する

: 数値 ## カーソルを指定した行に移動する

#####挿入モード######

1

) 挿入モードでのカーソル移動

i ##カーソル位置に挿入

I ##カーソルがある行の先頭に挿入

o ##カーソル行の下に次の行を挿入します

O ##カーソルがある行の上に行を挿入します

a ##カーソルの次の文字が挿入されます

##カーソルがある行の末尾に挿入

s ##カーソル位置の文字を削除して挿入する

S ##カーソルがある行を削除して挿入する

####vim の終了モード#####

:q ##終了。ファイルの内容が変更されていない場合に使用します

:wq ##終了して保存

:q! ##保存せずに強制終了。ファイルを変更した後に保存したくない場合に使用します

:wq! ## 強制的に終了して保存します。読み取り専用ファイルを書き込むときに使用します。

知らせ:

編集中の読み取り専用ファイルは現在のユーザーのファイルである必要があります

または現在の操作ユーザーがrootである

要約する

以上が、Linux システムの入出力管理と vim の一般的な機能についてご紹介した内容です。お役に立てれば幸いです。ご質問があれば、メッセージを残していただければ、すぐに返信いたします。

以下もご興味があるかもしれません:
  • Linux でタイムアウト付きの接続関数を試す
  • Linux の fsevents モジュールによって発生する npm ls エラーの解決方法の詳細な説明
  • Linux 上での Go 環境の構築のインストールと設定の説明
  • Linux の cut コマンドの使用法の概要
  • Linux シェル - 識別によってファイル システム属性をテストする方法の例
  • Linux シェルにおける if のさまざまな判断
  • Linux シェルの pushd、popd、dirs の使用方法の説明
  • Linux シェル コンソールでさまざまな色のフォントと背景を印刷する方法
  • Linux で so または実行可能プログラムの依存ライブラリを表示します
  • Linuxのアラーム機能の例の説明

<<:  MySql データベース クエリの特殊コマンド

>>:  クロスドメイン js フロントエンドの 8 つの実装ソリューション

推薦する

Windows での MySQL データベースのマスター/スレーブ構成チュートリアル

WindowsでMySQLデータベースのマスターとスレーブを構成する詳細なプロセスは次のとおりです。...

JavaScript parseInt() と Number() の違いのケーススタディ

学習目標: parseInt() と Number() という 2 つの関数は、文字列をデータ型に変...

MySQLはinit-connectを使用してアクセス監査機能の実装を増やします

まず init-connect を通じて mysql 接続を初期化し、次にインスタンスに接続する必要...

Kali Linux インストール VMware ツールのインストール プロセスと VM インストール vmtools ボタン グレー

Xiaobai は vmtools のインストールを記録します。 1. 意義と機能: VMWARE ...

CSS3 タブアニメーションの例 背景切り替えの動的効果

CSS 3 アニメーションの例 - タブの背景切り替えの動的効果、具体的なコードは次のとおりです。 ...

Maven モードで Tomcat ソースコードを実行する方法

序文最近、Tomcat の起動プロセスを分析していました。Tomcat のソース コードはアイデア次...

Linuxでディスク使用量を確認する方法

1. dfコマンドを使用してディスク全体の使用量を表示します。 df コマンドは、ハードディスクのマ...

マスタークラスタに再参加する k8s ノードの実装

1. ノードを削除するkubectl delete node node01を実行します。 2. この...

ツールキット: Bootstrap よりも強力なフロントエンド フレームワーク

注: 現在、最も人気のフロントエンド フレームワークは Bootstrap と Foundation...

CSS3は、Transformを使用して動く2D時計を作成します。

これでtransformコースは終了です。例を見てみましょう。transform transform...

Vue を通じて QR コードスキャン機能を実装する

ヒントこのプラグインは https プロトコルでのみアクセスできます。http プロトコルはうまく機...

xshellを使用してLinuxサーバーに接続する

xshellを使用してLinuxに接続する利点Windows環境でLinuxを直接操作できるインター...

JavaScript で知らない Object.entries の使い方

目次序文1. 共通オブジェクトを反復処理するには for...of を使用します2. 通常のオブジェ...

MySQLのロック機構の詳細な説明

序文データの一貫性と整合性を確保するために、あらゆるデータベースにはロック メカニズムが備わっていま...