我有一個平面文件,其中有多個出現的包含單引號的字符串,例如hari's
和leader's
。如何用sed中的空格替換單引號?
我想替換空間的單引號的所有事件,即
- 的
hari's
到hari s
- 的
leader's
所有出現的所有出現到leader s
我試圖
sed -e 's/"'"/ /g' myfile.txt
和
sed -e 's/"'"/" "/g' myfile.txt
但他們沒有給我預期的結果。
我有一個平面文件,其中有多個出現的包含單引號的字符串,例如hari's
和leader's
。如何用sed中的空格替換單引號?
我想替換空間的單引號的所有事件,即
hari's
到hari s
leader's
所有出現的所有出現到leader s
我試圖
sed -e 's/"'"/ /g' myfile.txt
和
sed -e 's/"'"/" "/g' myfile.txt
但他們沒有給我預期的結果。
儘量保持sed命令簡單,儘可能否則你將會在你稍後閱讀後對你寫的內容感到困惑。
#!/bin/bash
sed "s/'/ /g" myfile.txt
剛去離開單引號,把一個轉義的單引號:
sed 's/'\''/ /g' input
也可以用一個變量:
quote=\'
sed "s/$quote/ /g" input
正是我在找的東西,謝謝。 –
這會做你想要什麼
echo "hari's"| sed 's/\x27/ /g'
它將取代在你的文件/文目前隨時隨地單引號。即使它們用於引用,它們也會被空格替換。在這種情況下(除去在字邊界字不在引號),你可以使用以下內容:
echo "hari's"| sed -re 's/(\<.+)\x27(.+\>)/\1 \2/g'
HTH
這是根據我自己的經驗。
請注意我如何使用特殊字符'
VS "
sed
這之後不會做(沒有輸出)
2521 #> echo 1'2'3'4'5 | sed 's/'/ /g'
>
>
>
但這會做
2520 #> echo 1'2'3'4'5 | sed "s/'/ /g"
12345
我想有點解釋會很好。另外:這是真的是Solaris還是別的什麼? (還有什麼?) – Holger
的 - 我應該將其替換爲 sed -i's /「/」/ g'filename.txt
如果你想備份你可以做 sed -i.bak's /「/」/ g'filename.txt
另外...'tr \''
twalberg