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 つの実装ソリューション

推薦する

MySQLはトリガーを使用してデータベース内のテーブルの行制限を解決します。詳細な説明と例

MySQLはトリガーを使用してデータベース内のテーブルの行制限を解決します。詳細な説明と例最近のプロ...

角度コンテンツ投影の詳細な説明

目次単一コンテンツ投影マルチコンテンツ投影単一条件のコンテンツ投影アプリ-人物-htmlアプリ担当者...

CSSでフレックス配置を表示する(レイアウトツール)

display: flex レイアウトに関しては、深く理解している人もいますし、私も他の人の作業か...

Linux における「/」と「~」の違いの詳細な説明

「/」はルートディレクトリ、「~」はホームディレクトリです。 Linux ストレージはツリー状にマウ...

CentOS 7 パスワードを忘れた場合の解決プロセス図

必要Windows システムでも Linux システムでも、さまざまな理由でパスワードを忘れてしまう...

Linux lessコマンド例の詳細な説明

ファイル名が少ないファイルを表示ファイル名を少なく | grep -n コンテンツを検索内容に応じて...

Linux にソフトウェアをインストールするときにソフトウェア パッケージが存在しない問題を解決する方法

ソフトウェア パッケージが存在しない場合は、インストールされているソフトウェアのソフトウェア ソース...

サーバー上で Nginx を使用して Springboot プロジェクトをデプロイする方法の詳細なチュートリアル (jar パッケージ)

1. Javaプロジェクトをjarパッケージにパッケージ化するここではMavenツールを使用します...

シェル スクリプトを使用してワンクリックで MySQL 5.7.29 をインストールする方法

この記事は51CTOブログの著者wjw555の作品を参照しています。スクリプトの内容: vim イン...

Dockerコンテナの紹介

Dockerの概要Docker はオープンソースのソフトウェア展開ソリューションです。 Docker...

ウェブページのカラーマッチングにおけるオーバーラップとソフトカラーマッチングの手法を詳しく説明

この記事には、細かい点は一切なく、カラーマッチングのテクニックをシェアするだけです。とてもシンプルで...

CSSリンクと@importの違いの詳細な説明

HTML に CSS を追加するにはどうすればいいですか? HTML で CSS を設定する方法は ...

docker compose を使用してハーバープライベートウェアハウスをインストールする詳細なチュートリアル

概要港とは何ですか?英語の単語の意味は「港」です。 Harborはコンテナ(貨物)を保管するために使...

Redhat 7.3 に MySQL 8.0.22 をインストールするための詳細なチュートリアル (バイナリ インストール)

目次1. MySQLインストールパッケージをダウンロードする2. MySQLのアンインストール手順3...

HTML CSS JS はタブページのサンプルコードを実装します

コードをコピーコードは次のとおりです。 <html xmlns="">...