0
열거 된 방식으로 명명 된 몇 개의 파일의 이름을 바꾸려고합니다. 이전의 접근 방식은이 명령 줄을 사용하는 것이 었습니다.스크립트 내에서 ls를 실행할 때의 다른 동작
FILES=`ls "someDir/"`; for f in $FILES; do echo "Processing file: $f"; done;
Echoing
파일 이름은 데모 용입니다.
SCRIPT:
#!/bin/bash
FILES=`ls "someDir/"`
for f in $FILES
do
echo "Processing file: $f"
done
OUTPUT:
Processing file: File1
File2
File3
...
: 나는 (내가 생각하는 것은 같은 일입니다) 아래 스크립트, 그것은 하나 개의 파일로 전체
ls
출력을 취급하고이 출력을 생성 실행할 때
Processing file: File1
Processing file: File2
Processing file: File3
...
: 위는 예상 출력을 생성
나는 그 머리를 감당할 수 없다. 또한 나는 심지어이 동작을 생산하고있다 ls
인지 확실하지 않습니다. 이 문제의 원인은 무엇입니까? 그리고 왜?
파일의 실제 순서를 유지하기 위해'find'라고 말하는 방법이 있습니까? 이름이 붙여진 순서대로 처리해야하기 때문에 먼저'File1', 그리고 나서'File2' 등으로 처리합니다. 그러나'find '는'File325','File3','File20', ...과 같은 명령 출력을 생성합니다. – muXXmit2X