Linux/Unixシェルのファイル内のテキストを検索および置換するためにsedを使用する方法

私は新しいLinuxユーザーです。 私は”foo”というテキストを見つけて、”hosts”という名前のファイルで”bar”に置き換えたかったのです。テキスト”LinuxまたはUNIXライクなシステムでsedコマンドを使用して検索および置換するにはどうすればよいですか?
sedはストリームエディタの略です。 これは、指定されたファイルを読み取り、sedコマンドのリストで指定された入力を変更します。 デフォルトでは、入力は画面に書き込まれますが、ファイルを強制的に更新することができます。,

sedコマンドを使用してファイル内のテキストを検索して置換します

Sedを使用してLinux/Unixのファイル内のテキストを変更する手順は次のとおりです。

  1. ストリームエディタ(sed)を次のように使用します。
  2. sed-i’s/old-text/new-text/g’入力。sはsedの代替コマンドですfind and replace
  3. すべての出現を見つけ、inputという名前のファイルで’old-text’に置き換えるようにsedに指示します。txt
  4. ファイルが更新されたことを確認します。
  5. より多くの入力。,txt

構文と使用法を詳細に見てみましょう。こんにちは。

構文:sedテキストの検索と置換

sedを使用して検索と置換

helloというテキストファイルを作成しましょう。,ws:
sed 's/foo/bar/g' hello.txt
サンプル出力:

The is a test file created by nixCrft for demo purpose.bar is good.Foo is nice.I love FOO.
The is a test file created by nixCrft for demo purpose.bar is good.bar is nice.I love bar.

sedコマンドの問題

sed: 1: "s/http:///https://www.c ...": bad flag in substitute command: '/'
https://www.cyberciti.biz is outdate.Consider using https:// for all your needs.

sedを使用して単語と一致させる方法検索と置換を実行します

この例では、単語’love’のみを検索し、行の内容がfooのような特定の文字列であれば’sick’に置き換えます。
sed -i -e '/FOO/s/love/sick/' input.txt
catコマンドを使用して新しい変更を確認します。
cat input.txt

recap:sedを使用して検索と置換

►patreonでの私の仕事をサポートしてください。寄付で。,
►Linux上の最新のチュートリアルを入手し、オープンソース&Rssフィードまたは毎週の電子メールニュースレターを介してDevOps。
これまでに4件のコメントがあります。.. 一つ追加
カテゴリ UnixおよびLinuxコマンドのリスト
ファイル管理 cat
ファイアウォール アルパインawall•centos8•opensuse•rhel8•ubuntu16.04•ubuntu18.04•ubuntu20.,04
Network Utilities dig • host • ip • nmap
OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.,04
Package Manager apk • apt
Processes Management bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time
Searching grep • whereis • which
User Information groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w
WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ツールバーへスキップ