Skip to content
On this page

Linuxでテキストファイルを扱う

🎫 コンテンツは 2023-05-05 に以下のプラットフォームで検証されました
✅ Ubuntu 22.04

Linuxでテキストファイルを扱うことは、すべてのユーザーが持っているべき基本的なスキルです。テキストファイルは、Linuxシステムで構成ファイル、スクリプト、およびさまざまな種類のデータをプレーンテキスト形式で保存するために一般的に使用されます。このチュートリアルでは、Linuxでテキストファイルを扱う方法について説明します。

テキストファイルの使用

テキストファイルは、Linuxで構成情報、ログ、スクリプト、その他のデータを保存し、テキストエディタを使用して読み取りおよび編集できるようにするために一般的に使用されます。テキストファイルは、互換性のあるテキストエディタを使用して開くことができます。テキストファイルの一般的な拡張子は、.txt.conf.cfg.log.shです。さらに、C、C++、Java、Python、Perl、Rubyなどのプログラミング言語で書かれたプログラムソースコードもテキストファイルに保存されます。

テキストファイルで実行される最も一般的なタスクは、編集と読み取りです。

テキストファイルは、どのテキストエディタでも編集できますが、最も一般的なエディタはnanoとvimです。両方のエディタは、ほとんどのLinuxディストリビューションにデフォルトで含まれています。

NanoまたはVimがシステムにインストールされていない場合は、Linuxディストリビューションのパッケージマネージャを使用してインストールできます。たとえば、DebianまたはUbuntuを使用している場合は、次のコマンドを使用してnanoをインストールできます:apt-get install nano。(コマンドをrootとして実行するには、sudoを使用する必要がある場合があります。)

Nanoで編集

Nanoは、そのシンプルさと使いやすさから初心者に人気があります。新しいファイルを作成するか、既存のファイルを編集するには、ターミナルで次のコマンドを入力します。

sh
nano ファイル名.txt

ファイル名を希望するファイル名に置き換えてください。ファイルが開いたら、入力を開始できます。nanoエディタでファイルを保存するには、CTRL + Oを押してからEnterを押します。nanoエディタを終了するには、CTRL + Xを押します。

その他の便利なコマンドは、画面の下部にリストされています。たとえば、ファイル内の特定の文字列を検索する場合は、CTRL + Wを押して検索文字列を入力します。文字列を置換するには、CTRL + \を押します。ヘルプを取得するには、CTRL + Gを使用できます。

nanoエディタは非常にシンプルで使いやすいため、Linuxを始めたばかりの初心者には最適です。

Vimで編集

Vimは、ほとんどのLinuxシステムにデフォルトでインストールされている強力なコマンドラインテキストエディタです。経験豊富なLinuxユーザーの間でお気に入りのエディタであり、多くのシステム管理タスクでは、例えばcronタスクの設定を編集する場合にはデフォルトのエディタです。Vimを使用して新しいファイルを作成するか、既存のファイルを編集するには、ターミナルで次のコマンドを入力します。

sh
vim ファイル名.txt

vimの代わりにviコマンドを使用することもできます。両方とも同じです。

Vimを他のテキストエディタと異なるものにするのは、2つのモード(コマンドモードと挿入モード)を持っていることです。コマンドモードでは、保存、終了、検索などのアクションを実行するためにさまざまなコマンドを使用できます。挿入モードでは、ファイルにテキストを入力できます。最初は混乱する人が多いです。例えば、テキストをファイルに入力しようとすると何も起こらないか、予期しないことが起こることがあります。これは、挿入モードではなくコマンドモードにあるためです。慣れるまで時間がかかりますが、慣れると自然になります。

覚えておいてください:挿入モードに入るには、iを押し、画面左下隅に-- INSERT --と表示されていることを確認してください。挿入モードを終了するには、ESCを押します。

vimエディタでファイルを編集するには、iを押して挿入モードに入り、テキストを入力します。編集が終わったら、ESCを押して挿入モードを終了します。その後、:wqを入力してEnterを押すと保存して終了します。保存せずに終了する場合は、:q!を入力してEnterを押します。

ファイル内の特定の文字列を検索するには、コマンドモードに入り、/stringを入力します。文字列を置換するには、コマンドモードに入り、:s/old/new/gを入力します。

その他のクイックチップ:

  • 行の先頭にカーソルを移動するには、0を押します。
  • 行の末尾にカーソルを移動するには、$を押します。
  • ファイルの先頭にカーソルを移動するには、ggを押します。
  • ファイルの末尾にカーソルを移動するには、Gを押します。
  • 次の単語にカーソルを移動するには、wを押します。
  • 前の単語にカーソルを移動するには、bを押します。
  • カーソルを4方向に移動するには、hjklを押します。
  • 10行目にカーソルを移動するには、10Gを押します。
  • 文字を削除するには、xを押します。
  • 行を削除するには、ddを押します。
  • 元に戻すには、uを押します。
  • 行をコピーするには、yyを押します。
  • 行を貼り付けるには、pを押します。

注意:Vimのコマンドは大文字と小文字を区別します。たとえば、:wq:WQは同じではありません。

多くのコマンドがあり、それらを組み合わせてより複雑な操作を実行することができます。しかし、これらが最も一般的なものです。コマンドモードで:helpと入力することで、より多くのコマンドを見つけることができます。

Read With Less

テキストエディタとして、NanoとVimはテキストファイルを作成および編集するのに優れています。しかし、テキストファイルを単に読みたい場合はどうでしょうか?たとえば、ログファイルや設定ファイルを読みたい場合などです。もちろん、テキストエディタを使用してテキストファイルを読むことができますが、ファイルが非常に大きい場合は特に効率的ではありません。

注意:テキストエディタで非常に大きなファイルを開くと、読み込みに長時間かかる場合があり、システムリソースも多く使用する場合があります。本番サーバーで大きなファイルをテキストエディタで開かないでください。

テキストファイルを読むより良い方法は、lessコマンドを使用することです。lessコマンドは、ターミナルでテキストファイルを読むことができるページャーです。lessコマンドを使用してテキストファイルを読むには、ターミナルで次のコマンドを入力します。

sh
less filename.txt

lessコマンドの基本的な使用方法はVimと似ています。矢印キーを使用して上下にスクロールすることができ、/を使用して特定の文字列を検索することもできます。lessコマンドを終了するには、qを押します。

Lessはページャーなので、メモリ全体にファイルを読み込むのではなく、1ページずつファイルを読み込むため、テキストエディタよりもパフォーマンスが向上します。また、大きなファイルを読むのに非常に便利です。

catコマンドで読む

テキストファイルを読む別の方法は、catコマンドを使用する方法です。 catコマンドは、ターミナルでテキストファイルを読むことができるユーティリティです。 catコマンドを使用してテキストファイルを読むには、ターミナルで次のコマンドを入力します。

sh
cat filename.txt

catコマンドとlessコマンドの主な違いは、catコマンドが一度にファイル全体を読み取り、ターミナルに出力することです。これは、小さなファイルを読み取る場合に便利ですが、大きなファイルには推奨されません。

また、別のコマンドの出力を入力として使用する場合にも便利です。たとえば、ファイル内の特定の文字列を検索したい場合は、catコマンドを使用してファイルを読み取り、出力をgrepコマンドにパイプして文字列を検索できます。例えば:

sh
cat filename.txt | grep "string"

先頭と末尾を読む

headコマンドは、テキストファイルの最初の数行を読み取ることができるユーティリティです。headコマンドを使用してテキストファイルの最初の数行を読み取るには、ターミナルで次のコマンドを入力します。

sh
head filename.txt

headコマンドは、テキストエディタやページャーで開くことなく、ファイルの内容を素早く確認したい場合に便利です。

読み取る行数を設定したい場合は、-nオプションを使用できます。たとえば、ファイルの最初の10行を読み取りたい場合は、次のコマンドを使用できます。

sh
head -n 10 filename.txt

headコマンドとは対照的に、tailコマンドはテキストファイルの最後の数行を読み取ることができます。tailコマンドを使用してテキストファイルの最後の数行を読み取るには、ターミナルで次のコマンドを入力します。

sh
tail filename.txt

tailコマンドには、読み取る行数を設定する-nオプションもあります。たとえば、ファイルの最後の10行を読み取りたい場合は、次のコマンドを使用できます。

sh
tail -n 10 filename.txt

結論

まとめると、テキストファイルを扱うことは、Linuxユーザーが持つべき必須のスキルです。NanoとVimエディターを使用すると、Linuxでテキストファイルを簡単に作成、編集、保存できます。 lessコマンドは、ターミナルでテキストファイルを読むことができるページャーです。 catコマンドは、ターミナルでテキストファイルを読むことができるユーティリティです。 headコマンドとtailコマンドを使用すると、テキストファイルの最初の数行と最後の数行を読むことができます。この記事で、nanoとvimエディターを使用してテキストファイルを作成および編集する方法を学びました。Happy editing!