[解決済み] sed で二重引用符と単一引用符をエスケープするにはどうしたらいいですか?
2022-02-10 23:32:13
質問
私が調べたところでは、シングルクォートを使用した場合、中のものはすべてリテラルとみなされるようです。私はそれを代入に使いたいのです。しかし、私はシングルクォートまたはダブルクォートを持つ文字列を見つけたいのです。
例えば
sed -i 's/"http://www.fubar.com"/URL_FUBAR/g'
"http://www.fubar.com"をURL_FUBARに置き換えたいのですが、どうすればいいですか?sedはどのように私の//や二重引用符を認識することになっているのでしょうか?
ありがとうございました。
EDITです。
を使用できますか?
s/\"http\:\/\/www\.fubar\.\com\"/URL_FUBAR/g
?
シングルクォートの中の文字がエスケープされるのですか?
どのように解決するのですか?
その
s///
コマンドを
sed
の代わりに他の文字を使用することができます。
/
のようにデリミタとして使用します。
sed 's#"http://www\.fubar\.com"#URL_FUBAR#g'
または
sed 's,"http://www\.fubar\.com",URL_FUBAR,g'
ダブルクォーテーションは問題ありません。 一重引用符にマッチする場合は、2種類の引用符を入れ替えてください。シングルクォートされた文字列は、シングルクォートを含むことができないことに注意してください(エスケープされたものでさえも含むことができません)。
の場合、ドットをエスケープする必要があります。
sed
を正規表現パターンとしてではなく、リテラルなドットとして解釈します。
.
のように、任意の1文字にマッチします。
関連
-
[解決済み】ログアウトと再ログインをせずに.bashrcの設定を再読み込みする方法とは?
-
[解決済み】ZIPエラー - 何もできない
-
[解決済み] sedで複数のパターンを一度に置き換えるには?
-
[解決済み] Bashスクリプトで引数を反復処理する方法
-
[解決済み] Bashで標準出力と標準エラーの両方をファイルにリダイレクトして追記する方法
-
[解決済み] sedで改行をスペースに置き換えるには?
-
[解決済み] 一重引用符で囲まれた文字列の一重引用符をエスケープするには
-
[解決済み] Bashのシングルクォートとダブルクォートの違い
-
[解決済み] 二重括弧、片括弧、中括弧の使い方
-
[解決済み】bash/sedスクリプトを使用してテキストファイルの最初の行を削除するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 '\r': コマンドが見つかりません - .bashrc / .bash_profile [重複].
-
[解決済み] MacOSのbashターミナルでexport PS1="\u[\033[m]@[\033[32m]\h:\[\033[33;1m]\w[\033[m]\$" は何を意味していますか?
-
[解決済み] Cp: ターゲットはディレクトリではありません
-
[解決済み] Bashで文字列から改行を削除する方法
-
[解決済み] etc/profileでVISIBLE=NOWを設定するのはなぜですか?
-
[解決済み] mkdir コマンドが bash スクリプトで見つかりません。
-
[解決済み] awk で行を飛ばすにはどうしたらいいですか?
-
[解決済み] cygwin の ssh が終了時に "Killed by signal 1" と表示される
-
[解決済み] MINGW64 "make build" エラー。"bash: make: コマンドが見つかりません"
-
[解決済み] BashでDo-whileループをエミュレートする