cygwin 유틸리티에 대한 와일드 카드 인수


4

명령

ls "myfolder"

csv 파일을 폴더 안에 나열하는 일을합니다. 아직

ls "myfolder/*.csv" & gt; No such file or directory

때문에

ls "myfolder/*" & gt; No such file or directory

ls "myfolder\*" & gt; No such file or directory


3
큰 따옴표는 문자 그대로 이름에 별표가있는 파일을 찾습니다. 그들을 사용하지 마십시오. 그 쉘 확장은 어떻게 ls 먼저 와일드 카드와 일치하는 파일 이름을 나열 할 수 있습니다.
Jason C

답변:


6

귀하의 ls 명령을 큰 따옴표없이 :

ls myfolder/*.csv

와일드 카드 (별표) 주위에 큰 따옴표를 넣었으므로 셸은 확장을하지 않고 이름이 지정된 파일을 찾으려고 시도합니다 *.csv.

mtak@frisbee:~$ ls tst/*.txt
tst/bar.txt  tst/bla.txt  tst/foo.txt
mtak@frisbee:~$ ls "tst/*.txt"
ls: cannot access tst/*.txt: No such file or directory

1
+1이 추가; 와일드 카드 확장은 쉘에 의해 수행되고 확장 된 파일 이름 목록은 와일드 카드 일치를 수행하는 ls 자체에 전달되지 않습니다. 큰 따옴표는 쉘이 그것을하지 못하도록합니다. ls는 문자 그대로 파일 이름을 취하고 와일드 카드에 대해 알지 못합니다. 큰 따옴표는 쉘이 이것을하지 못하도록하며 별표는 변경되지 않고 전달됩니다.
Jason C
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.