
Bash 쉘 스크립트 안에 이 명령이 있는데, 그 목적은 java 명령을 적용하는 것입니다.HTML압축기, 디렉토리에 있는 각 HTML 파일에:
find $DIR -type f -name '*.html' -exec java -jar $BASEDIR/Upload/htmlcompressor-1.5.3.jar --remove-intertag-spaces {} \;
그러나 명령줄의 출력은 각 파일을 찾아 해당 파일로 작업을 수행하고 있음을 나타내는 것처럼 보이지만 실제로 결과를 파일에 기록하는 것은 아닙니다.
htmlcompressor 문서에 따르면 사용법은 다음과 같습니다.
사용법: java -jar htmlcompressor.jar [옵션] [입력]
그래서 마지막에 명명된 입력 파일이 있어야 하는데 find
명령이 이를 처리하는 줄 알았습니다. 하지만 그것에 대해서는 내가 틀린 것 같습니다.
내가 찾은 파일에 실제로 작동하도록 하려면 어떻게 해야 합니까?
답변1
귀하가 제공한 내용이 올바른 것 같습니다. 다음 명령을 java
삽입하여 올바르게 호출되고 있는지 확인할 수 있습니다 .echo
find $DIR -type f -name '*.html' -exec echo java -jar $BASEDIR/Upload/htmlcompressor-1.5.3.jar --remove-intertag-spaces {} \;
(표준에 내장되지 않은 쉘 내장 버전이 있는 POSIX 호환 시스템이 적절하다고 가정 PATH
).
그 외에도 결과 명령 중 하나를 수동으로 실행하여 올바르게 작동하는지 확인할 수도 있습니다.