テキストの操作:表示、検索、パイプ処理
Linux管理者が日常的に使うテキスト操作を身につけます。ファイルの表示、grepによる検索、パイプとリダイレクトによるコマンドの連結を通じて、コマンドラインからサーバーデータを直接処理します。
「テキストの操作:表示、検索、パイプ処理」はCoddyKit上の無料Linux Server Deployment & SSH Masteryレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLinux Server Deployment & SSH Mastery学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Linux Server Deployment & SSH Masteryコースには全4レッスンが含まれています。
テキストがLinuxのインターフェース
Linuxサーバーでは、設定ファイル、ログ、出力など、ほとんどすべてがテキストです。パイプやリダイレクトを使ってテキストを自在に読み取り、絞り込めることが管理者としての力になります。
catとlessでファイルを表示する
catはファイル全体を画面に出力します。短いファイルには適しています。長いファイルにはlessを使いましょう。スクロールしたり、/で検索したり、qで終了したりできます。
cat /etc/hostname
less /var/log/syslogheadとtailで先頭と末尾を確認する
先頭または末尾だけが必要ですか。headは最初の行を、tailは最後の行を表示します。また、tail -fを使うとファイルをリアルタイムで追跡できるため、ログの増加を監視するのに最適です。
head -n 5 /etc/passwd
tail -n 20 /var/log/auth.log
tail -f /var/log/nginx/access.loggrepで検索する
grepはパターンに一致する行を見つけます。ログ分析の主力となるコマンドです。大文字と小文字を無視する-i、行番号を表示する-n、ディレクトリを再帰的に検索する-rを活用しましょう。
grep -i 'failed' /var/log/auth.log
grep -rn 'TODO' /etc/nginx/パイプの力
パイプ(|)は、あるコマンドの出力を次のコマンドに渡し、単純なツールを連結できるようにします。ここではgrepがcatの出力を絞り込みます。
cat /var/log/syslog | grep -i 'usb'wcで数える
wcは行数、単語数、文字数を数えます。wc -lにパイプで渡せば、ログイン失敗が何回発生したかといった問いに答えられます。
grep -i 'failed password' /var/log/auth.log | wc -l並べ替えと重複排除
sortは行を並べ替え、uniqは隣接する重複をまとめます。そのため、ほとんどの場合は先にsortを実行します。uniq -cは件数を集計でき、項目のランキングに便利です。
cut -d' ' -f1 access.log | sort | uniq -c | sort -rn | head出力をファイルにリダイレクトする
リダイレクトを使うと、出力をファイルに保存できます。>は上書き、>>は追記、2>はエラーの取得に使います。これにより、スクリプトでレポートやログを作成できます。
grep -i error /var/log/syslog > errors_today.txt
date >> errors_today.txtsedでストリームを編集する
sedはs/old/new/を使って、テキストストリームをその場で編集します。-iを追加しない限り、元のファイルには触れずに変更後の内容を出力します。
sed 's/localhost/myserver/g' /etc/hosts組み合わせて使う
本当のスキルは、これらのツールを組み合わせることです。1行のコマンドでWebログから問題のあるIPの上位を取り出せます。読み取り、抽出、並べ替え、集計、順位付けを行い、上位5件を表示します。
cat access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -n 5ベストプラクティス
テキスト処理は整理して行いましょう。大きなファイルにはlessを使い、パイプラインは一段階ずつ組み立て、データを上書きしないように>>を使い、grepのパターンは引用符で囲みます。
確認問題
テキスト処理に関する知識を確認しましょう。
まとめ
テキスト処理のツールキットがそろいました。cat/less/head/tailで表示し、grepで検索し、wc/sort/uniq/sedで変換し、パイプとリダイレクトですべてを組み合わせられます。
よくある質問
「テキストの操作:表示、検索、パイプ処理」レッスンは無料ですか?
はい。「テキストの操作:表示、検索、パイプ処理」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Linux Server Deployment & SSH Masteryコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Linux Server Deployment & SSH Masteryコースには全4レッスンが含まれています。
「テキストの操作:表示、検索、パイプ処理」で何を学びますか?
Linux管理者が日常的に使うテキスト操作を身につけます。ファイルの表示、grepによる検索、パイプとリダイレクトによるコマンドの連結を通じて、コマンドラインからサーバーデータを直接処理します。 ブラウザで直接実行するハンズオンコードでLinux Server Deployment & SSH Masteryを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Linux Server Deployment & SSH Masteryを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのLinux Server Deployment & SSH Masteryは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「テキストの操作:表示、検索、パイプ処理」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このLinux Server Deployment & SSH Masteryレッスンでコードを書いて実行できますか?
はい。すべてのLinux Server Deployment & SSH Masteryレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Linuxサーバー入門
- 基本的なCLIコマンドを習得する
- ファイルシステムと権限の基礎
- テキストの操作:表示、検索、パイプ処理