Linux ファイルのコンテンツの表示と編集
1. ファイルの内容を表示する
猫の使い方
cat
ファイル全体の内容を表示するにはコマンドを使用します。ファイルの内容をターミナル ウィンドウに一度に出力します。
たとえば、file.txt
という名前のファイルの内容を表示するには、次のコマンドを実行します。
cat file.txt
ヒント: ファイルの内容が長すぎて端末に一度に完全に表示できない場合は、less
または more
コマンドを使用して、ページング表示。
猫の詳しい説明
複数のファイルを連結して標準出力に出力します。
概要
猫 [オプション]… [ファイル]…
主目的
- ファイルの内容を表示するか、ファイルが存在しない場合、またはファイルが - の場合は標準入力を読み込みます。
- 複数のファイルの内容を連結し、標準出力に出力します。
- ファイルの内容にある非表示の文字 (制御文字、改行、タブなど) を表示します。
パラメータ
FILE (オプション): 処理するファイルは 1 つ以上です。
オプション
ロングオプションはショートオプションと同等です
- -A、--show-all は、「-vET」組み合わせオプションと同等です。
- -b, --number-nonblank 空白以外の行のみに 1 から始まる番号を付け、「-n」オプションをオーバーライドします。
- -e は、「-vE」組み合わせオプションと同等です。
- -E, --show-ends 各行の末尾に「$'」文字を表示します。
- -n, --number すべての行に 1 から始まる番号を付けます。
- -s, --squeeze-blank 連続する空白行を 1 行に圧縮します。
- -t は、「-vT」組み合わせオプションと同等です。
- -T、--show-tabs TAB (タブ文字) を表すには「^I」を使用します。
- -u POSIX 互換性オプション。意味はありません。
- -v, --show-nonprinting LFD (改行文字 '\n') と TAB (タブ文字) を除く制御文字を表示するには、「^」 および 「M-」 記号を使用します。
- –help ヘルプ情報を表示して終了します。
- –version バージョン情報を表示して終了します。
戻り値
不正なオプションまたは不正なパラメータが指定されない限り、戻りステータスは成功です。
例
# 合并显示多个文件
cat ./1.log ./2.log ./3.log
# 显示文件中的非打印字符、tab、换行符
cat -A test.log
# 压缩文件的空行
cat -s test.log
# 显示文件并在所有行开头附加行号
cat -n test.log
# 显示文件并在所有非空行开头附加行号
cat -b test.log
# 将标准输入的内容和文件内容一并显示
echo '######' |cat - test.log
知らせ
- このコマンドは GNU coreutils パッケージに含まれています。関連するヘルプ情報については、
man -s 1 cat
またはinfo coreutils 'cat invocation'
をご覧ください。 - cat コマンドを使用して大きなファイルを表示すると、テキストが画面上で急速に点滅 (スクロール) し、ユーザーは表示されたコンテンツをはっきりと見ることができないことがよくあります。スクロールを制御するには、Ctrl+s を押してスクロールを停止します。 Ctrl+q キーを押してスクロールを再開し、Ctrl+c (割り込み) キーを押してコマンドの実行を終了し、シェル プロンプト状態に戻ります。
- 大きなファイルを表示する場合は、コマンドや emacs や vi などのテキスト エディタの使用を減らしていくことをお勧めします。
少ない
less
このコマンドは、ファイルの内容をページごとに表示でき、便利なブラウジング操作を提供します。
less
を使用してファイルの内容を表示するには、次のコマンドを入力するだけです:
less file.txt
ファイル内容の最初のページが表示されます。矢印キーを使用して上下にスクロールしたり、スペースバーを押してページを下に移動したりできます。
ヒント: less
コマンドを終了するには、q
キーを押します。
あまり詳しくない説明
画面を分割してページを上下に切り替えてファイルの内容を参照します
追加情報
less
コマンドは、テキスト ファイルの内容を参照するために使用できる more
コマンドによく似ています。違いは、less
コマンドであることです。 more
コマンドは前方または後方に移動できます。ファイルを後方にブラウズできますが、 コマンドは前方にのみブラウズできます。 less
コマンドを使用してファイルを表示する場合、 PageUp
キーを使用してページを上に移動し、 PageDown
キーを使用してページを下に移動します。 less
プログラムを終了するには、Q
キーを押します。
文法
less [选项] [参数]
オプション
-e
: ファイルの内容が表示された後、自動的に終了します。-f
: ファイルを強制的に表示します。-g
: 表示速度を向上させるため、検索されたすべてのキーワードを強調表示せず、現在表示されているキーワードのみを表示します。-l
: 検索時に大文字と小文字の違いを無視します。-N
: 各行の先頭に行番号を表示します。-s
: 複数の連続する空白行を 1 行に圧縮して表示します。-S
: 長いコンテンツを折り返さずに 1 行で表示します。-x<数字>
: TAB 文字を指定した数の空白文字として表示します。
パラメータ
- ファイル: コンテンツを分割画面で表示するファイルを指定します。
例
sudo less /var/log/shadowsocks.log
もっと
less
と同様に、more
コマンドを使用してファイルの内容をページごとに表示することもできます。
more
を使用してファイルの内容を表示するには、次のコマンドを入力するだけです:
more file.txt
は less
とは異なり、 more
では 1 ページ前方にのみスクロールでき、 less
投稿のように前方にスクロールすることはできません。スクロール。
ヒント: more
コマンドを終了するには、q
キーを押します。
より詳しい説明
more
このコマンドは、ファイルの内容をページ単位で表示するために使用されます。
追加情報
more
コマンドは、vi
エディタに基づくテキスト フィルタです。テキスト ファイルの内容を全画面モードで表示し、vi
キーワードをサポートします。でのターゲティング操作。 more
には、次のような多くの組み込みショートカット キーがあります。
H
:ヘルプ情報を取得します。Enter
: 1 行下にスクロールします。- スペース: 1 画面下にスクロールします。
Q
:コマンドを終了します。
このコマンドは、一度に 1 画面のテキストを表示し、画面がいっぱいになると停止し、画面の下部に表示されたファイルの割合を示すプロンプト メッセージを表示します:「-More-(XX%)」 。次の方法でプロンプトに答えることができます。
Space
キーを押す: 次のテキスト画面を表示します。Enter
キーを押す: 次のテキスト行のみが表示されます。- スラッシュ文字を押します
|
: 次に、パターンを入力して、テキスト内で次に一致するパターンを検索します。 H
キーを押す: 関連するヘルプ情報を含むヘルプ画面が表示されます。B
キーを押す: 前の画面の内容を表示します。- 按
Q
键:退出more
命令。
文法
more [选项] [文件]
オプション
-<数字>
:各画面に表示する行数を指定します。-d
: プロンプト情報を表示します。-c
:スクロール操作は行わず、毎回画面を更新します。-s
:複数の空行を1行に圧縮して表示します。-u
:下線は禁止です。+<数字>
:指定した番号の行から表示します。
パラメータ
文件
: コンテンツをページ単位で表示するファイル。
例
ファイルの内容を表示file
しますが、表示する前に画面を消去し、画面の下部に完了率を表示します。
more -dc file
表示 file
ファイルの内容が 10 行ごとに表示され、表示前に画面がクリアされます。
more -c -10 file
2. ファイルの検索とフィルタリング
グリップ
grep
コマンドは、指定されたパターンをファイルで検索するために使用されます。指定したパターンと一致し、一致する行を出力します。
grep
を使用するための基本的な構文は次のとおりです。
grep pattern file.txt
ここで、pattern
は検索するパターン、file.txt
は検索するファイル名です。
たとえば、file.txt
という名前のファイル内で「hello」という単語を含む行を検索するには、次のコマンドを実行します。
grep hello file.txt
grep
コマンドには、より柔軟な検索のための多くのオプションも用意されています。 man grep
コマンドを使用すると、完全なヘルプ ドキュメントを表示できます。
grepの詳しい説明
grep
このコマンドは、ファイル内で指定されたパターンを検索し、一致する行を出力するために使用されます。
文法
grep [选项] 模式 [文件]
オプション
-i
: 大文字小文字を無視します。-v
: マッチングを逆にし、一致しない行のみを出力します。-r
: ディレクトリ内のすべてのファイルを再帰的に検索します。-l
: 一致するパターンを含むファイル名のみを出力します。-c
:一致した行数のみを出力します。-n
:一致する行と行番号を同時に出力します。-H
: 複数のファイルを検索する場合、一致する行とファイル名を表示します。
パラメータ
模式
: 検索するパターン。通常の文字列または正規表現を使用できます。文件
:検索するファイルを指定します。
例
-
ファイル内で文字列「hello」を含む行を検索
example.txt
し、一致する行を出力します。grep "hello" example.txt
-
複数のファイルでパターン「pattern」に一致する行を検索し、一致する行とファイル名を表示します。
grep -H "pattern" file1.txt file2.txt
-
ディレクトリ
directory
とそのサブディレクトリでパターン「キーワード」に一致する行を再帰的に検索し、一致した行と行番号を出力します。grep -r -n "keyword" directory
-
ファイル内でパターン「exclude」を含まない行を検索し、一致しない行を出力します。
grep -v "exclude" example.txt
探す
find
このコマンドを使用すると、指定したパスで条件を満たすファイルを検索できます。
find
を使用するための基本的な構文は次のとおりです。
find path -name filename
このうち、path
は検索対象のパス、filename
は検索対象のファイル名です。
たとえば、現在のディレクトリとそのサブディレクトリで file.txt
という名前のファイルを検索するには、次のコマンドを実行します。
find . -name file.txt
find
コマンドは、ファイル タイプやサイズなどによる検索など、他の条件もサポートしています。 man find
コマンドを使用すると、完全なヘルプ ドキュメントを表示できます。
findの詳しい説明
find
このコマンドは、指定したディレクトリ内で条件を満たすファイルまたはディレクトリを検索するために使用されます。
文法
find [路径] [表达式]
オプション
-name
: ファイル名に従って一致します。-type
: ファイルの種類に応じて一致します。-size
:ファイルサイズに応じて一致します。-mtime
: ファイルの変更時刻に応じて一致します。-exec
: 検索結果に対してコマンドを実行します。
パラメータ
路径
: 検索するディレクトリのパス。表达式
: 検索条件を指定するための式です。
例
-
現在のディレクトリとそのサブディレクトリで「example.txt」という名前のファイルを見つけます。
find . -name "example.txt"
-
/var/log
ディレクトリで、ファイル名が「.log」で終わるファイルを探します。find /var/log -name "*.log"
-
現在のディレクトリとそのサブディレクトリで、タイプが Normal で 1MB を超えるファイルを検索します。
find . -type f -size +1M
-
/tmp
ディレクトリで過去 7 日間に変更されたファイルを検索し、結果をresult.txt
ファイルに出力します。find /tmp -mtime -7 > result.txt
-
ファイル名が「.txt」で終わるファイルを検索し、検索結果を次のコマンドに渡します。
-exec
処理 (削除など) を行います。find . -name "*.txt" -exec rm {} \;
ああ
awk
これは、指定されたルールに従ってファイルを処理および分析できる強力なテキスト処理ツールです。
awk
を使用するための基本的な構文は次のとおりです。
awk 'pattern { action }' file.txt
このうち、pattern
は照合するパターン、action
は実行する操作、file.txt
です。処理対象のファイル名です。
たとえば、file.txt
という名前のファイルのデータの最初の列を抽出するには、次のコマンドを実行します。
awk '{ print $1 }' file.txt
awk
は、条件判断、ループなど、より複雑な操作もサポートしています。 awk
の使用方法について詳しく知りたい場合は、ドキュメントまたはチュートリアルを参照してください。
awkの詳しい説明
awk
これは、テキスト ファイルを処理するためのコマンド ライン ツールです。テキスト データの分析と操作に使用されます。さまざまな数学関数や文字列関数のほか、条件ステートメントやループ ステートメントもサポートされています。
文法
awk [选项] '表达式' [文件]
オプション
-F
: 入力ファイルのフィールド区切り文字を指定します。-v
: 変数を定義し、値を割り当てます。-f
: スクリプト ファイルを使用してコマンドを実行します。
パラメータ
表达式
: 入力ファイルを処理するためのawk
コマンドを含むスクリプト。文件
: 処理対象の入力ファイル。
例
-
出力ファイルの 1 列目と 3 列目
/etc/passwd
:awk -F ":" '{print $1, $3}' /etc/passwd
-
統計ファイル
/var/log/messages
内にキーワード「error」を含む行数:awk '/error/ {count++} END {print count}' /var/log/messages
-
変数と算術演算を使用してファイル内のデータを処理する
/proc/meminfo
:awk -v total=0 '/MemTotal/ {total+=$2} /SwapTotal/ {total+=$2} END {print total / 1024 " MB"}' /proc/meminfo
-
スクリプト ファイル
script.awk
を使用してファイル/var/log/auth.log
を処理します:awk -f script.awk /var/log/auth.log
3. ファイル編集
ナノ
nano
シンプルで使いやすい、初心者向けのテキストエディタです。
nano
を使用してファイルを編集するには、次のコマンドを入力するだけです:
nano file.txt
これはターミナル ウィンドウで開きますfile.txt
。そこでファイルを編集して保存できます。
ヒント: nano
では、ファイルの保存や編集の終了など、操作によく使用されるショートカット キーが下部に表示されます。
ナノの詳しい説明
nano
これは、ターミナルで使用されるシンプルで使いやすいテキスト エディターであり、基本的なテキスト編集操作とショートカット キーをサポートしています。
文法
nano [选项] [文件]
オプション
-B
: バックアップ機能を有効にすると、ファイルを保存するときにバックアップ ファイルが作成されます。-C
: 自動行折り返しを有効にします。-E
: 視覚的なスクロール バーを無効にします。-G
: マウスのサポートを無効にします。-i
: 新しい行を自動的にインデントします。-m
: マウスのサポートを有効にします。-O
: ファイル書き込み時の自動行折り返しを無効にします。-R
: ファイルを読み取り専用モードで開きます。-S
:スクロール同期機能を無効にします。-T
: 構文強調表示モード (-T python
など) を指定します。
パラメータ
文件
: 編集するファイルのパス。
例
-
使用
nano
编辑文件example.txt
:nano example.txt
-
ファイルのバックアップと編集を有効にする
example.txt
:nano -B example.txt
-
マウス サポートを使用し、ファイルを編集する
example.txt
:nano -m example.txt
-
ファイルを読み取り専用モードで開く
example.txt
:nano -R example.txt
上記はnano
コマンドの簡単な説明です。必要に応じて、さまざまなオプションとパラメータを使用してテキスト編集操作を実行できます。 nano
エディタでは、ショートカット キーを使用して、切り取り、コピー、貼り付け、検索、置換などの一般的な操作を実行できます。特定のショートカット キー情報は、 Ctrl+G
または < /span>F1
キーを使用して表示します。
vi/vim
vi
または vim
は、Linux システムで広く使用されている強力なテキスト エディタです。
vi
を使用してファイルを開くには、次のコマンドを入力するだけです:
vi file.txt
このとき、vi
の編集モードになり、挿入、削除、置換などの操作を実行できます。
ヒント: 変更を保存して終了するにはvi
、Esc
キーを押してから :wq
と入力して Enter キーを押します。 。
vi/vimの詳しい説明
vi
および vim
は、端末環境でのテキスト編集に広く使用されている強力なテキスト エディタです。 vim
は vi
の拡張バージョンであり、より多くの機能と改善が提供されています。
文法
vi [选项] [文件]
vim [选项] [文件]
オプション
-b
: ファイルをバイナリ モードで開きます。-c <命令>
: 指定されたEx
コマンドを実行します。-C
: 互換モードを有効にします。-E
:Ex
モードを開始します (インターフェイスは表示されません)。-g
: グラフィカルインターフェースモードを有効にします。-i <配置文件>
: 指定された設定ファイルを使用します。-m
: 変更モードを有効にします。-n
: 自動ワードラップを無効にします。-R
: ファイルを読み取り専用モードで開きます。-s
: 静かモード、警告メッセージを抑制します。-u <vimrc>
: 指定されたvimrc
プロファイルを使用します。-w <脚本文件>
: 記録したマクロを指定したスクリプト ファイルに保存します。
パラメータ
文件
: 編集するファイルのパス。
例
-
使用
vi
编辑文件example.txt
:vi example.txt
-
使用
vim
编辑文件example.txt
:vim example.txt
-
ファイルを読み取り専用モードで開く
example.txt
:vim -R example.txt
-
vim
コマンドを実行してから、指定されたEx
コマンドを実行します。たとえば、すべての行を削除します。vim -c ":%d" example.txt
vi
および vim
エディタには、挿入、削除、コピー、貼り付け、検索と置換、ウィンドウの分割など、多くの強力な編集および操作機能があります。ショートカット キーとコマンドを使用して、さまざまな編集タスクを実行できます。詳細な操作およびコマンド情報は、vim
のヘルプ ドキュメント (:help
) から入手できます。
要約する
Linux では、ファイルの内容を表示したり編集したりする必要がよくあります。以下に、よく使用されるコマンドをいくつかまとめます。
-
ファイルの内容を表示します。
cat
:cat
コマンドは、シンプルで一般的に使用されるファイル表示ツールです。ファイル全体の内容を表示したり、複数のファイルを結合して表示したりできます。less
:less
コマンドは、より強力で柔軟なファイル表示ツールです。ページごとにファイルを参照でき、前後検索、上下スクロールなどの機能をサポートします。more
:more
コマンドはless
に似ており、ファイルの内容をページに表示するために使用されるツールでもあります。
-
ファイルの検索とフィルタリング:
grep
:grep
コマンドは、ファイル内で指定されたパターンを検索するために使用されるツールです。正規表現に基づいてコンテンツを照合およびフィルタリングし、一致した行を出力できます。find
:find
コマンドは、指定されたディレクトリ内のファイルとディレクトリを検索するために使用されます。ファイルは、名前、サイズ、時間などによるフィルタリングなど、さまざまな基準に基づいて検索できます。awk
:awk
は、ファイルを 1 行ずつスキャンしてさまざまな操作を実行する強力なテキスト処理ツールです。カスタマイズされたルールに従ってテキスト データを抽出、変換、処理できます。
-
ファイル編集:
nano
:nano
は、ターミナルで使用するシンプルで使いやすいテキスト エディタです。基本的なテキスト編集操作とショートカットキーをサポートしており、初心者に適しています。vi/vim
:vi
およびvim
は、端末環境での編集に広く使用されている強力なテキスト エディタです。豊富な編集機能と操作機能を備えており、経験豊富なユーザーに適しています。
上記は、Linux ファイルの内容を表示および編集するためのいくつかの一般的なコマンドの概要です。さまざまなニーズや使用シナリオに応じて、適切なコマンドを柔軟に選択してファイルを処理できます。これらのコマンドをマスターすると、Linux システムでの操作がより快適になることを覚えておいてください。