분명히 sh 스크립트를 포팅합니다. sed
의 GNU 구현을 사용하여 sed
의 BSD 구현에 작성되었습니다. 원래 주석으로 스크립트의 정확한 라인은 다음과 같습니다
ext=.h; ext="$(echo $ext | sed 's/\./\\./' -)"; echo [$ext]
사용 : 나는 (분명히 내가 ext
에 대한 모든 가능성 값을 소진하고 있지 않다) 다음과 같이 결과를 재현 할 수 있어요
# escape dot in file extension to grep it
ext="$(echo $ext | sed 's/\./\\./' -)"
sed
의 GNU의 구현은 다음과가 반환됩니다
[\.h]
이 sed
FOL의 BSD의 구현을 사용하여 lowing이 반환됩니다
sed: -: No such file or directory
[]
이 sed
모두 구현 ext=.h; ext="$(echo $ext | sed 's/\./\\./')"; echo [$ext]
반환을 [\.h]
실행.
GNU와 BSD의 sed
의 매뉴얼 페이지에서 후미 "-"에 관한 내용을 찾지 못했습니다. "-"로 sed
을 검색하는 것은 그다지 효과적이지 않습니다.
"-"는 오타입니까? 예기치 않은 값인 $ext
에 대해 "-"가 필요합니까? 문제가 sed
이 아닌 sh
입니까?
"-"의 목적이 무엇인지 설명하거나 더 잘 설명해야하는 사람이 나를 안내 할 수 있습니까?
내 시스템에서
에 체크 아웃 : http://stackoverflow.com/questions/8045479/whats-the-magic -of-a-dash-in-command-line-parameters –