私は新しいLinuxユーザーです。私はvimまたはviテキストエディタを使い始めました。 Linuxオペレーティングシステムで「eth0」という単語をすべて見つけて「br0」に置き換えるにはどうすればよいですか?
難易度 | 簡単(rss) |
ルート権限 | いいえ |
要件 | vim |
時間 | 1m |
viとvimの両方のテキストエディタが代替コマンドを提供します。テキストの検索/検索および置換に使用されます。このページでは、substituteコマンドを使用してテキストを検索してvim / viに置き換える方法について説明します。
VIM検索と置換の構文
VIM検索と置換
viとvimはどちらも、検索と置換のための:sコマンドを提供します。わかりやすい例をいくつか見てみましょう。
例
次のサンプルテキストファイルを使用します。
「eth0」の各出現箇所を見つけるには現在の行のみで、「br0」に置き換えて、次のように入力します(最初にEscキーを押して入力します):
:s/eth0/br0/g
次に、検索を試みますそして、vimの下で「eth1」のすべての出現箇所を「br1」に置き換え、次のように入力します。
:%s/eth1/br1/g
「eth1」のすべての出現箇所を検索して「」に置き換えますbr1 ‘、ただしvimで最初に確認を求めるには、次のように入力します。
:%s/eth1/br1/gc
大文字と小文字を区別しない「eth1」のすべての出現箇所を検索し、「br1」に置き換えます’、次のように入力します。
:%s/eth1/br1/gi
上記の例では、eth1、ETH1、eTh1、ETh1などが検索され、br1に置き換えられます。 3〜7行目の「eth1」のすべての出現箇所を検索して「br1」に置き換えるには、次のように入力します。
:3,7s/eth1/br1/g
簡単なデモ
アニメーションgif01:Vimの検索と置換のデモ
構文の置換
オン各行で、「Sysadmin」という単語全体をすべて削除します
はい、単語も削除できます:
:%s/\//g
「method_」という単語全体とそれに続く3文字の最初の出現を削除するにはどうすればよいですか?
:%s/\.\{3}//
現在の単語を検索して置換行のみ
現在の行でのみ「bin」が出現するたびに検索し、wrapper.sh:
:%s/bin/sbin/gc
<で「sbin」に置き換えます。 / p>
結論
%s置換コマンドを使用して、テキストを検索し、viまたはvimテキストエディターに置き換える方法を学習しました。 vim内で次のコマンドを入力して、代替トピックに関するヘルプを取得したり、ドキュメントを表示したりします。
:help :substitute
🐧Linux、オープンソース& DevOpsの最新チュートリアルをRSSフィードまたはウィークリーメールニュースレターで入手してください。
🐧これまでに8件のコメント… 1つ追加↓
カテゴリ | UnixおよびLinuxコマンドのリスト |
---|---|
ファイル管理 | cat |
ファイアウォール | アルパインアウォール•CentOS8•OpenSUSE•RHEL8•Ubuntu16.04•Ubuntu18.04•Ubuntu20.04 |
ネットワークユーティリティ | dig•host•ip•nmap |
OpenVPN | CentOS7•CentOS8•Debian10•Debian 8/9•Ubuntu18.04•Ubuntu20.04 |
パッケージマネージャー | apk•apt |
プロセス管理 | bg•chroot•cron•disown•fg•jobs•killall•kill•pidof•pstree•pwdx•time |
検索 | grep•whereis •どの |
ユーザー情報 | グループ•id•lastcomm•last•lid / libuser-lid•logname•members•users•whoami•who•w |
WireGuard VPN | アルパイン•CentOS8•Debian10•ファイアウォール•Ubuntu20.04 |