
*.txt
내 디렉토리에 파일이 있다고 가정해 보겠습니다 txtpath=/path/to/txt/
.
.*.txt
$txtpath
$txtpath
ls *.txt $txtpath
*.txt
$txtpath
다음 명령을 사용하여 파일을 나열 했습니다 .find $txtpath -name '*.txt' | sed 's/\// /g' | grep -o '[^ ]*$'
하지만 더 우아한 해결책이 있을까요?
답변1
패턴과 함께 전체 경로를 지정하십시오.
ls -d -- "${txtpath}"/*.txt
사실에도 불구하고체크리스트이는 쉘 글로빙에 의해 수행되며 ls
궁극적으로 쉘에서 수신된 매개변수만 인쇄됩니다. printf
여기에서 사용할 수도 있습니다 .
printf '%s\n' "${txtpath}"/*.txt
txt
디렉터리에 (일치하지 않는 전역 명령을 억제하지 않는 쉘에서) 숨기지 않은 파일이 없는 한 동일한 결과를 제공합니다.