![간단한 bash while 루프는 0 [중복]이라는 원치 않는 파일을 생성합니다.](https://rvso.com/image/101060/%EA%B0%84%EB%8B%A8%ED%95%9C%20bash%20while%20%EB%A3%A8%ED%94%84%EB%8A%94%200%20%5B%EC%A4%91%EB%B3%B5%5D%EC%9D%B4%EB%9D%BC%EB%8A%94%20%EC%9B%90%EC%B9%98%20%EC%95%8A%EB%8A%94%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%83%9D%EC%84%B1%ED%95%A9%EB%8B%88%EB%8B%A4..png)
설명할 수 없는 이유로 다음 코드를 실행하면(분명히 최소화된) "0"이라는 파일이 생성됩니다. 누군가 이런 일이 발생하는 이유와 이를 방지하는 방법을 설명해 주시겠습니까? 매우 감사합니다
#!/bin/bash
while [ 1 > 0 ]
do
exit
done
답변1
> 0
라는 파일로 리디렉션됩니다 0
. 참고 > something
또는 유사한 구문마지막에 있을 필요는 없어. 리디렉션되는 명령이 의미가 없는 경우에도 파일이 생성됩니다. 귀하의 경우 명령은 [ 1 ]
구문적으로 유효하며 1
비어 있지 않은 문자열인지 확인합니다.
아마 당신은 [ 1 -gt 0 ]
. help [
및 를 참조하십시오 help test | less
.