우리 회사에서 사용하는 타사 일정 관리 애플리케이션이 rm
예상대로 명령을 실행하지 않았습니다. 즉, rm -f $filetoremove
작업을 마친 다음 스크립트의 다음 코드 줄로 이동하고 싶습니다 .
하지만 더 나은 성능을 발휘하도록 만들어야 합니다 rm -f
.
파일을 사용하지 않고 삭제하는 다른 방법이 있습니까 rm
? 해봤는데 > delete_foobar.file
삭제도 안되고 그냥 지워지네요.
추가 정보: 제가 일하는 환경은 대기업입니다. .sh
스케줄링 애플리케이션 외부에서 테스트하기 위해 스크립트를 작성했습니다 . 예약 소프트웨어 외부에서 이 rm -f $filetoremove
명령은 반환 코드를 사용합니다 0
. 그러나 예약 소프트웨어는 0
반환 코드를 등록하지 않고 나머지 스크립트를 실행하지 않고 즉시 종료됩니다 .sh
. 이는 문제가 있으며 공급업체는 결함을 인정했습니다.
자동화 소프트웨어의 세부사항이나 수신되는 정확한 반환 코드를 모릅니다. 내가 아는 것은 자동화 소프트웨어를 실행할 때 스크립트에 rm
.rm
예, 파일 처리가 끝나면 파일을 삭제하는 것이 중요합니다.
답변1
이것unlink
명령도 POSIX의 일부입니다.
unlink <file>
답변2
너는 달릴 수 있니 shred
? 그렇다면 다음을 수행하십시오.
shred -u <file to remove>
답변3
파일을 사용하지 않고 삭제하는 다른 방법이 있습니까
rm
?
busybox rm -f path/to/file
이는 일정 관리 응용 프로그램을 제한 없이 실행할 수 있다고 가정한 것입니다 busybox
. 어떤 애플리케이션인지 지정하지 않았기 때문에 실제로 제한이 무엇인지 알 수 없지만 애플리케이션에 just 실행을 방지하는 간단한 몰리 가드가 있는 경우 위의 방법이 작동합니다 rm
.
답변4
파일을 /tmp로 이동합니다.
mv filename /tmp
다음 재부팅 시 삭제됩니다.