나는 이것을 썼다:
sudo sed -i ‘s/3389/3390/g’ /etc/xrdp/xrdp.ini
이로 인해 다음 오류가 발생했습니다.
sed: -e expression #1, char 1: unknown command: `'
답변1
당신의
sudo sed -i ‘s/3389/3390/g’ /etc/xrdp/xrdp.ini
vs 맞다
sudo sed -i 's/3389/3390/g' /etc/xrdp/xrdp.ini
다양한 유형의 견적을 확인하세요.
Writer나 Word와 같은 문서 편집기에서 복사하여 붙여넣을 때 주의하세요. 인용문(및 기타 내용)이 자동으로 현지어와 일치하도록 변경되는 경우가 많습니다.
답변2
동일한 오류가 발생했지만 원인이 달랐습니다. ` 문자를 사용하지 않았고, 어딘가에서 코드를 복사하여 붙여넣지도 않았습니다. 조건이 포함된 sed 스크립트를 작성 중이었고 명령에 새 줄을 사용했습니다. 다른 사람이 동일한 문제를 겪고 있고 허용된 답변으로 도움을 받지 못한 경우를 대비하여 여기에 게시하세요.
오류를 복제하는 방법은 다음과 같습니다.
echo class:myclass > myfile
cat script
/class:/
s/myclass/MYCLASS/g #ctrl+d to exit
sed -f script myfile
산출:
sed: file script line 2: unknown command: `
'
이를 해결하는 방법은 조건 뒤에 명령을 배치하거나(같은 줄에) 중괄호를 사용하여 스크립트가 다음과 같이 보이도록 하는 것입니다.
/class:/ s/myclass/MYCLASS/
아니면 이거:
/class:/ {
s/myclass/MYCLASS/
}