2013-11-01 2 views
1

작은 따옴표 (')를 따옴표 (')로 대체 할 때 sed 사용법에 대해 다소 혼란 스럽습니다. sed에서 많은 조합을 시도했지만 어떻게 든이 문제를 허용하지 않습니다. 특정 변환sed usage for (')

어떤 도움을 아주 많이 이해할 수있을 것이다

PS :.. 나뿐만 아니라 대체하는 다른 방법에 대한 열려있어하지만 떠들썩한 파티에서 잘 실행해야합니다 (UNIX)

+0

당신이 어떤 조합을 시도 했습니까? –

+0

내 대답은 여기에 있습니다 -> http://stackoverflow.com/questions/16154007/replace-all-double-quotes-with-single-quotes ... 이전에 확인 했어야합니다 – Marcos

+0

http://stackoverflow.com/questions/16154007/replace-all-double-quotes with single-quotes – Marcos

답변

1

당신은 시도 할 수 다음과 같은 내용 :

[ ~]$ echo "'Hello'"|sed "s/'/\"/g" 
"Hello" 
당신이 원하는 경우에 당신이 tr 대신 sed을 사용할 수 있습니다 그렇지 않으면

[ ~]$ echo \"Hello\"|sed "s/\"/'/g" 
'Hello' 

, :

그리고 역

[ ~]$ echo \"Hello\"|tr "\"" "'" 
'Hello' 
2
사용할 수

은 다음과 같습니다

s='abc"def"123' 
echo "$s"|sed "s/\"/'/g" 

abc'def'123 
2

하나를 교체 문자를 사용할 수도 있습니다. tr :

$ printf '%s\n' '"Hello"' | tr \" \' 
'Hello' 

지금 나는

0

이 당신을 위해 작동 할 수 있습니다 ... 당신이 어떻게 든 "살균"일부 사용자 입력이 사용하지 않을 희망 :

sed 'y/'\''/"/' file