LS=`ls "$SRC_PATH"/* | grep -i -v *.ignore`
조건이 여러 개 있어서 조건을 확인하려면 while을 사용해야 하기 때문에 for 루프를 사용할 수 없습니다.
다음을 사용하여 콘텐츠에 액세스해 보세요.
${LS[$CNT]}
CNT=`expr $CNT + 1`
콘텐츠에 접근할 수 없습니다.
답변1
우리는부터 시작하겠습니다ls의 출력을 구문 분석하지 마십시오.왜냐하면 사람들에게 그것을 상기시키는 것이 항상 좋기 때문입니다.
다음 참고로, grep
이는 원하는 대로 수행되지 않을 수 있습니다. \.ignore$
".ignore"로 끝나는 파일을 건너뛰기를 원할 수도 있습니다.
우리가 사용하고 있으므로 ksh
전화할 필요가 없습니다 expr
.let CNT=CNT+1
지금..
배열을 설정하려면 구문을 ksh
사용해야 합니다 set -A
.
예를 들어
set -A LS $(ls "$SRC_PATH"/* | grep -i -v '\.ignore$')
이제 ${LS[0]}
이 파일이 첫 번째 파일이 됩니다.
예를 들어,
$ ls X
a b c
그 다음에
$ set -A LS $(ls X)
$ echo ${LS[0]}
a
$ echo ${LS[1]}
b
$ echo ${LS[2]}
c