내가 할 때
lynx --dump http://data.iana.org/TLD/tlds-alpha-by-domain.txt
이 웹페이지의 콘텐츠를 출력하지만, 내가 할 때
lynx --dump https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=manuf
덤프되는 내용은 브라우저에 표시되는 내용과 다릅니다.
첫 번째 명령은 작동하지만 두 번째 명령은 작동하지 않는 이유와 이를 작동시키는 방법은 무엇입니까?
답변1
lynx --dump 'https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=manuf'
이 경우 URL ;
에는 셸에 .세미콜론 별도의 명령이 포함되어 있으므로 URL을 인용해야 하며, URL이 올바르게 인용되지 않으면 세미콜론이 URL의 일부가 되지 않습니다.
실제로 세미콜론 사이의 비트는 명령으로 해석됩니다. 즉, 이제 a
및 라는 이름의 쉘 변수가 있음을 의미합니다 f
.
$ echo "$a"
blob_plain
$ echo "$f"
manuf
URL을 인용해야 하는 또 다른 이유는 URL에 쉘 파일 이름 와일드카드 문자( )가 포함되어 있기 때문입니다 ?
.