이 문장이 사실이라면 내 코드에 구문 오류가 있어 파일을 이동할 수 없습니다. 이 코드는 영원히 지속됩니다. 또한 따옴표를 추가하려고 시도했지만 실패했습니다. 나는 내가 어리석은 실수를 할 것이라는 것을 알고 있습니다.
for file in *.sort;
do if [`wc -l` $i -eq 57817];
then mv "$i" "../$i";
fi; done
어떤 제안이 있으십니까?
답변1
[
사이에 공간이 있어야합니다.$i
설정되지 않음- 명령 대체에는 전체 명령이 포함되지 않습니다(
wc -l file
전체 명령이므로 그냥 래핑하면 됩니다wc -l
). wc -l file
오류를 일으킨 줄 번호와 파일 이름을 출력합니다.wc -l <file
이것을 피하기 위해 사용될 수 있습니다
for file in *.sort; do
if [ "$(wc -l <"$file")" -eq 57817 ]; then
mv "$file" "../$file"
fi
done