私が持っています
echo "A url: \\\"http:..."
"A url: \"http:..."
(<-これが私のテキストファイルにある方法です)
私は欲しい
echo "A url: \'http:..."
しかし、すべての引用のため、私のsedコマンドは正しく機能しません
echo "A url: \\\"http:..." | sed -r 's/\\"+/\\\'/g'
失敗する理由がわかります(sedステートメントの中央にある単一引用符が問題ですが、どうすればよいですか?使用する3番目のタイプの引用符を探しましたが、見つけられませんでした。ハッキングはありませんか?
\"
の出現箇所を\'
で変更する場合は、次のようにします。
$ echo "A url: \\\"http:..." | sed -r "s/\\\"/\\'/g"
A url: \'http:...
sed
の外側の引用符には"
を使用するだけで、代わりに'
を使用できます。複数の連続する"+
があり、それらをすべて置き換えたい場合を除き、"
は必要ありません。その場合は、sed -r "s/\\\"+/\\'/g"
を使用してください。