ホームページ >システムチュートリアル >Linux >Linuxのファイルにテキストを追加する方法(テキストエディターなし)

Linuxのファイルにテキストを追加する方法(テキストエディターなし)

Joseph Gordon-Levitt
Joseph Gordon-Levittオリジナル
2025-03-18 09:28:09170ブラウズ

Linuxのファイルにテキストを追加する方法(テキストエディターなし)

Linuxシステム管理者とユーザーは、テキストファイルを処理する必要があることがよくあります。 NanoやVIMなどのテキストエディターは一般的ですが、コマンドラインから直接ファイルにコンテンツを追加する必要がある場合があります。この場合、EchoやTEEコマンドなどのLinuxビルトインツールのパワーを活用できます。このガイドでは、Linuxのテキストエディターを使用せずにファイルにテキストを追加する2つの方法をガイドし、実用的な例を提供します。

目次

  • エコーと出力リダイレクトを使用してファイルにコンテンツを追加します
  • ティーとここにドキュメントを使用して、ファイルにテキストを追加します

なぜ、いつファイルにテキストを直接追加する必要があるのですか?

インターネット接続なしで新しくインストールされた最小化Linuxシステムでは、オンラインリポジトリにアクセスするか、他のツールをインストールするためにネットワークを手動で構成する必要がある場合があります。

ECHOまたはTEEおよびここでドキュメントを使用すると、 /etc/systemd/network/network-config.network network/network-config.networkまたは/etc/network/interfacesなどのファイルに必要なネットワーク構成の詳細を追加できます。

IPアドレスを構成するだけでなく、コマンドラインからエコー、Tシャツ、または同様のツールを使用してファイルにテキストを追加する必要がある多くの状況があります。

  1. スクリプトと自動化:スクリプトまたは自動タスクを作成する場合、ユーザーの相互作用を必要とするテキストエディターに依存することなく、コマンドラインからファイルを直接操作する方が便利で効率的であることがよくあります。
  2. リモート管理:リモートシステムを管理する場合、コマンドラインツールを使用してファイルにテキストを追加することは、特に複数のサーバーに変更が必要な場合にテキストエディターを開くよりも実用的です。
  3. コンテナ化または最小化された環境:コンテナ化または最小化されたLinux環境では、テキストエディターがインストールされないか、デフォルトで使用できない場合があります。この場合、EchoやTEEなどのコマンドラインツールは、ファイルを操作するためのより速く、より信頼性の高い方法を提供します。
  4. スクリプト化された構成:構成ファイルを必要とするアプリケーションまたはサービスを展開する場合、コマンドラインツールを使用して、インストール中または実行中にこれらのファイルをプログラム的に生成または変更することが一般的です。
  5. バージョン制御統合:バージョン制御(GITなど)の下でファイルを使用している場合、コマンドラインからの追加を開発ワークフローにシームレスに統合して、変更を容易にすることができます。
  6. ロギングと監査:場合によっては、ファイルを手動で開いて編集することなく、スクリプトまたはコマンドから直接ファイルにログメッセージまたは監査証跡を追加する必要がある場合があります。

数日前、テスト用のFedora 40サーバーQEMU画像をダウンロードしました。 Fedora 40 Server QEMUイメージを使用してシステムを最初に開始したとき、インストーラーは手動でIPアドレスを設定するように促しました。

最小化されたFedoraサーバー画像にはテキストエディターがないため、 FedoraでIPアドレスを構成するために次の方法を使用する必要があります。

わかりました、あまり言わないでください。 EchoおよびTEEコマンドを使用して、 /etc/systemd/network/を使用して、ネットワーク構成を直接ファイルに直接追加する方法をお見せします。

エコーと出力リダイレクトを使用してファイルにコンテンツを追加します

Echoコマンドは、テキストを端末に印刷するための強力なツールであり、出力リダイレクトと組み合わせて使用​​すると、ファイルにコンテンツを追加するために使用できます。

この方法の使用方法は次のとおりです。

 echo -e "\[Match\]\nName=enp3s0\n\n\n\[Network\]\nAddress=192.168.1.100/24\nGateway=192.168.1.1\nDNS=8.8.8.8" | sudo tee -a /etc/systemd/network/20-wired.network > /dev/null

このコマンドを分解しましょう。

  1. echo -e使用すると、バックスラッシュエスケープキャラクターの解釈が可能になり、引用テキストにnewlines( \n )を含めることができます。
  2. 引用符のテキストは、ファイルに追加するコンテンツを示します。この例では、ネットワーク構成です。
  3. |
  4. sudo tee -a /etc/systemd/network/20-wired.network指定されたファイル( /etc/systemd/network/20-wired.network )にパイプラインコンテンツを追加します。 sudoコマンドは、ファイルに書き込むために必要なアクセス許可を付与するために使用されます。
  5. > /dev/null teeの標準出力を空のデバイス( /dev/null )にリダイレクトし、効果的に廃棄し、端末を清潔に保ちます。

この方法は、複数のテキストを追加する必要がある場合に特に役立ちます。エコーに渡された引用された文字列にそれらをすべて含めることができるためです。

上記のコマンドでは、次のコンテンツを/etc/systemd/network/20-wired.networkファイルに追加します。 catコマンドを使用してファイルコンテンツを表示して確認できます。

 <code>$ cat /etc/systemd/network/20-wired.network [Match] Name=enp3s0 [Network] Address=192.168.1.100/24 Gateway=192.168.1.1 DNS=8.8.8.8</code>

ティーとここにドキュメントを使用して、ファイルにテキストを追加します

ファイルにテキストを追加する別の方法は、hereドキュメントと組み合わせてTEEコマンドを使用することです。この方法は、マルチラインコンテンツを扱う際に、読みやすさと管理性が向上します。

これが例です:

 sudo tee -a /etc/systemd/network/20-wired.network>/dev/null <p>ここでドキュメントを使用すると、コードの読み取りが容易になり、複数のテキストを追加することが容易になります。 <code>EOF</code>はエンドマークであり、開始マークとエンドマークが一貫している限り、他のマークに置き換えることができます。</p><p>どちらの方法もスクリプトとコマンドラインの使用に効果的であり、それらの間の選択は通常、個人の好みまたは特定のユースケースによって決定されます。</p><p>エコーメソッドはより単純ですが、より長くて複雑なコンテンツの場合、読みやすさが低下する場合があります。ここでは、ここでは読みやすくなりますが、入力の開始と終了を宣言するための追加のステップが必要です。</p><p>これらの両方の方法では、テキストエディターなしで<strong>Linuxコマンドラインから直接ファイルにコンテンツを追加する</strong>ことができます。 Linux管理者として、これらのコマンドラインスキルを習得すると、生産性が向上し、生産性が向上します。</p>

以上がLinuxのファイルにテキストを追加する方法(テキストエディターなし)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。