Linux:ファイル内のテキスト文字列を置き換える[ガイド]

Linux:ファイル内のテキスト文字列を置き換える[ガイド]

Linuxでテキストファイルを手動で編集するのは面倒です。そのため、コマンドラインを使用してファイル内のテキスト文字列をすばやく置き換える方法を知っておくとよいでしょう。Linuxを初めて使用し、その方法がわからない場合は、私たちがお手伝いします。Linuxでファイル内のテキスト文字列を置き換える方法を説明します。

Linux:ファイル内のテキスト文字列を置き換える[ガイド]

ファイル内のテキスト文字列を置き換える– sed

sedツールは、Linuxでファイル内のテキスト文字列を置き換えるための最良の方法です。理由?使い方は簡単で、その仕事はとてもうまくいきます。Sedは通常、Linuxオペレーティングシステムの99%にプリインストールされているため、使用するためにインストールする必要はありません。

ファイル内のテキスト文字列をSedに置き換えるには、sed-i コマンドを使用します。使い方はこちらです。まず、Linuxデスクトップでターミナルウィンドウを開きます。キーボードのCtrl + Alt + Tを押すと、ターミナルウィンドウを開くことができます 。

ターミナルウィンドウが開いて使用できるようになったら、ターミナルプロンプトでsed-i を書き出します。これが置換コマンドの開始です。

sed -i

sed -i コマンドを書き出した後 、引用符を追加します。sed -i に置き換えられるすべてのテキストはこのマークの後に開始する必要があるため、この引用符は必須です。

sed -i '

最初の'マークの後に、  s /と書き込みます。 sが/ あなたが使用して交換したい既存のテキストの前に直接行く のsed

sed -i's /

今という のは、/ ターミナルコマンドラインプロンプトに書き込まれ、それがファイルに置き換えるためにどのようなテキストsedを伝えるために時間があります。この例では、「リンゴ」という単語を置き換えます。 

sed -i's / apple

置き換えたいテキストがコマンドに書き込まれると、次のステップはそれを置き換える新しいテキストを書き込むことです。この例では、「リンゴ」を「オレンジ」に置き換えます。

sed -i's / apples / oranges

置き換えたいテキストがコマンド(オレンジ色)に書き込まれたら、g /でコマンドを閉じます。グラム/告げる sedの新しいテキスト(オレンジ)ですべてのテキストインスタンス(りんご)を交換します。以下の例のようになります。

注:ファイル内のすべてのテキスト(たとえば、リンゴからオレンジ)を置き換えたくない場合は、gを削除して、sed -i 's/apples/oranges/'代わりに実行します。

sed -i's / apple / orange / g '

最後に、テキストがどのファイルにあり、置き換える必要があるかをsed に伝え ます。この例では、ホームディレクトリのfruit.txtがターゲットです。

Linux:ファイル内のテキスト文字列を置き換える[ガイド]

sed -i's / apples / oranges / g'〜 / fruit.txt

Enterキー を押して コマンドを実行し、ファイル内のテキスト文字列を置き換えます。

ファイル内のテキスト文字列を置き換える– Perl

Linuxでファイル内のテキスト文字列を置き換える別の方法は、Perlプログラミング言語を使用することです。Perlはテキスト処理に多く使用されるため、当然、ファイル内のテキスト文字列を入れ替えることができ、このユースケースに最適です。

まず、LinuxPCにPerlがインストールされていることを確認します。ほとんどのLinuxオペレーティングシステムにはPerlがインストールされています。ただし、お持ちでない場合は、オペレーティングシステムのヘルプページで、動作させる方法を確認してください。

Perlを使用してファイル内のテキスト文字列を置き換えるには、ターミナルが必要です。キーボードのCtrl + Alt + T を押して、Linuxデスクトップでターミナルを開き ます。または、アプリメニューで「ターミナル」を検索して起動します。

ターミナルウィンドウが開いて使用できるようになったら、コマンドラインプロンプトでperl - pe と入力することから始め ます。 perlの-pe コマンドは、ファイル内のテキスト文字列を置換するために必要とされるものです。

perl -pe

書き出しの際 のperl -peを 端末プロンプトで、最初に開始する必要があります 引用符。このマークは、コマンド内のテキスト置換領域がどこにあるかをPerlに通知します。

perl -pe '

最初の引用符の後に、  s /を追加し 、その後に置き換えたいテキストの文字列、および別の/を追加します。たとえば、fruit.txtファイルの「apples」を置き換えるには、次のテキストを書き出します。

perl -pe's / apples /

置き換えたい単語を書き留めたら、既存のテキストを置き換える単語を追加します。たとえば、「fruit.txt」の「apples」を「oranges」に置き換える場合は、後に「oranges」を追加すると、のperl -pe 's/apples/ようになりますperl -pe 's/apples/oranges/

perl -pe's / apples / oranges /

両方のテキスト文字列がコマンドに含まれるようになったら、Perlが使用する入力ファイルを指定する必要があります。たとえば、「fruit.txt」ファイルのテキストを置き換える場合は、コマンドで指定する必要があります。

注:この例では、「fruit.txt」ファイルはホームディレクトリ(〜/)にあります。コマンドを機能させるには、必ず「〜/ fruit.txt」をテキストファイルの場所に置き換えてください。

perl -pe's / apples / oranges / '〜/ fruit.txt

入力ファイル(Perlで変更しているファイル)がコマンドに追加されたので、コマンドは次のようになります。

Linux:ファイル内のテキスト文字列を置き換える[ガイド]

perl -pe's / apples / oranges / '〜/ fruit.txt> /tmp/output.txt; cat /tmp/output.txt>〜/ fruit.txt

上記のコマンドを実行すると、テキスト文字列が指定した新しいテキストに置き換えられます。この例では、「リンゴ」を「オレンジ」に置き換えました。変更を表示するには、以下のコマンドを入力します。

猫fruit.txt


UbuntuサーバーにGitLabをインストールする方法

UbuntuサーバーにGitLabをインストールする方法

GitLab を Ubuntu サーバー上で動作させたいと考えていますか? GitLab は、GitHub のようなサービスに代わる、強力な自己ホスト可能な代替サービスです。これを使用すると、次のことができます

SELinux による Ubuntu Linux サーバーの保護

SELinux による Ubuntu Linux サーバーの保護

SELinux をインストールしてアクティブ化することで、Ubuntu Linux サーバーにセキュリティを追加する方法を学びます。

Cockpit を使用して Linux サーバー上で NFS を構成する

Cockpit を使用して Linux サーバー上で NFS を構成する

Linux サーバーに NFS 共有をマウントする簡単な方法が必要ですか? Cockpit アプリを使用して NFS 共有をマウントする方法を学びます。

Ubuntu 22.04 LTS にアップグレードする方法

Ubuntu 22.04 LTS にアップグレードする方法

Ubuntu 22.04 の長期サポートが登場しました! デスクトップまたはラップトップを最新の Ubuntu リリースにアップグレードする方法を学びます。

最新の Nvidia GPU ドライバーを Linux にインストールする方法

最新の Nvidia GPU ドライバーを Linux にインストールする方法

最新の Nvidia GPU ドライバーを Linux にインストールする方法

Dockerコンテナにファイルを転送する方法

Dockerコンテナにファイルを転送する方法

ファイルを Docker コンテナに転送する必要がありますか? Docker cp ツールを使用すると、コンテナーとの間でファイルを簡単に移動できます。

Linux に DEB ファイルをインストールする方法

Linux に DEB ファイルをインストールする方法

.DEB ファイルとは何ですか? それを使って何をしますか?Linux PC に DEB ファイルをインストールするさまざまな方法を学びましょう。

GOG Galaxy を Linux 上で動作させる方法

GOG Galaxy を Linux 上で動作させる方法

GOG.com のゲームを所有していますか? ビデオ ゲームを楽しむために Linux PC に GOG Galaxy クライアントをセットアップしたいですか? このガイドに従ってください。

CentOS に Docker エンジンをインストールする方法

CentOS に Docker エンジンをインストールする方法

Docker Engine は、Linux およびその他のプラットフォーム用のオープン コンテナ化プログラムです。Docker Engine は、次のように動作する自己完結型コンテナを管理します。

Ferdi とすべてのチャットを 1 つにまとめる方法

Ferdi とすべてのチャットを 1 つにまとめる方法

Slack、Discord、その他多くの生産性向上ツールを Linux システムにインストールすることにうんざりしていませんか? それらをすべて 1 つに結合できたらいいのにと思いますか