이 구성의 파일 또는 디렉토리 이름 만 에코해야합니다.
ls -Al | while read string
do
...
done
ls -Al
출력 :
drwxr-xr-x 12 s162103 studs 12 march 28 12:49 personal domain
drwxr-xr-x 2 s162103 studs 3 march 28 22:32 public_html
drwxr-xr-x 7 s162103 studs 8 march 28 13:59 WebApplication1
예를 들어 시도하면
ls -Al | while read string
do
echo "$string" | awk '{print $9}
done
그런 다음 공백없이 파일과 디렉토리 만 출력하십시오. 파일 또는 디렉토리에 "개인 도메인"과 같은 공백이 있으면 "개인"이라는 단어 만 사용됩니다.
매우 간단한 해결책이 필요합니다. 어쩌면 awk보다 더 나은 해결책이있을 수 있습니다.
ls -Al | while
. 간단하고 안정적인 방법은 for string in *; do echo "$string"; done
입니다.
ls
가요? 구문 분석 ls
과 "모든 nix에서 작동하며 문제가 발생해도 중단되지 않습니다"는 잘 어울리지 않습니다.
ls -Al *' '*
? 파싱ls
의 출력은 결코 좋은 것으로 이끌지 않습니다.