![W로 시작하는 패키지에서는 Linux mint 'apt list'가 작동하지 않습니다.](https://linux55.com/image/187637/W%EB%A1%9C%20%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94%20%ED%8C%A8%ED%82%A4%EC%A7%80%EC%97%90%EC%84%9C%EB%8A%94%20Linux%20mint%20'apt%20list'%EA%B0%80%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
저는 Linux를 처음 접했습니다. 나는 가지고있다리눅스 민트 19.3설치하다. 따라서 기본적으로 제가 이해하는 바에 apt list
따르면 와일드카드 등을 사용할 수 있습니다 . 내가 시도한 대부분의 다른 문자 및 문자 시퀀스와 잘 작동합니다. 하지만 모두 나열하고 싶을 때*
?
와인패키지를 설치한 후 내 패키지가 apt list
"와인"이라는 단어와 와일드카드 문자의 모든 문자 조합에서 작동하지 않는다는 것을 발견했습니다. 예: "w*, wi*, win*, wine* 등"에는 적용되지 않습니다. W로 시작하는 와인 외에 다른 패키지도 있어요. 정확히 동일한 이름을 가진 패키지만 나열됩니다. 그러나 따옴표를 사용하면(내쉬운버전 < 2.0이므로 따옴표 안의 별표를 와일드카드로 처리하는 것 같습니다. 내가 뭔가를 놓치고 있는 걸까, 버그나 다른 뭔가가 있는 걸까?
편집 0: 댓글 감사합니다. 터미널이 실행된 디렉터리에 W로 시작하는 파일이 있어서 그런 줄 알았습니다. 그런데 왜 이것이며 프로그래밍 수준에서 어떻게 작동합니까? 파일 이름을 제외한 다른 모든 매개 변수를 명령 옵션으로 처리하면 안 되나요?
답변1
와 bash
같은 와일드카드를 사용하면 디렉터리에서 일치하는 항목을 먼저 검색하여 해당 항목을 평가할 기회를 갖기 전에 명령에 전달됩니다. 그렇지 않으면 와 같은 명령이 작동하지 않습니다. 따옴표를 사용하면 표현식이 문자 그대로 해석되고 와일드카드 문자가 평가를 위해 명령에 전달됩니다. 정규식을 사용할 수도 있으며 bash는 이를 평가하지 않습니다.w*
bash
apt
apt
ls file*
bash
apt list --installed | grep ^w.*