여러 개의 디렉토리가 있습니다
/home/imp/imp/msgs
그리고
/home/imp/imp/msgs/bak
가장 먼저 일어나는 일은 모든 파일( *.BRD
및*.MIX
/home/imp/imp/msgs/
/home/imp/imp/msgs/bak
메시지가 게시되면 다시 복사됩니다./home/imp/imp/msgs/
내가 하고 싶은 것은 에서 최신 파일( *.BRD
및 *.MIX
) 을 /home/imp/imp/msgs/
다음 으로 복사하는 것입니다./home/imp/imp/msgs/bak/
가능합니까?
파일을 복사하기 전에 실행하는 쉘 스크립트가 있습니다 *.BRD
.*.MIX
/home/imp/imp/msgs/
/home/imp/imp/msgs/bak/
#!/bin/bash
export SDL_VIDEODRIVER=dummy
nice -n 20 dosbox -noconsole -c "mount c /" -c "c:" -c "cd \\home\\imp\\imp\\" -c "set PATH=c:\\home\\imp\\imp\\" -c "imp-mail scan" -c "set FIDOCONFIG=c:\\home\\imp\\hpt\\config\\config" -c "hpt pack scan" -c "exit"
rm /home/imp/hpt/flags/hpt.lock
/home/imp/imp/pktdate -c /home/imp/hpt/pkt-out/*.pkt
cd /home/imp/hpt
./hpt pack scan
다음으로 가져오고 파일을 *.BRD
저장 합니다 .*.MIX
/home/imp/imp/msgs/
감사해요.
답변1
귀하의 디렉토리 구조에 대해 100% 확신할 수는 없지만 다음과 같은 것이 작동할 것입니다.
find /home/imp/imp/msgs/ -maxdepth 1 -newer FOO_FILE -name '*.BRD' -o -name '*.MIX' -execdir cp {} /home/imp/imp/msgs/bak/ \;
설명하다
find /home/imp/imp/msgs/
: 이 디렉토리에서 검색-maxdepth 1
: 하위 디렉터리를 입력하지 마세요.-newer FOO_FILE
: FOO_FILE보다 최신 파일만 찾습니다.-name '*.BRD' -o -name '*.MIX'
: 이름*.BRD
또는*.MIX
-execdir cp {} /home/imp/imp/msgs/bak/ \;
:이 파일을 다음 위치에 복사하세요./home/imp/imp/msgs/bak/
아마도 마지막 부분 없이 실행하여 올바른 파일과 먼저 일치하는지 테스트하는 것이 가장 좋습니다.
find /home/imp/imp/msgs/ -maxdepth 1 -newer FOO_FILE -name '*.BRD' -o -name '*.MIX'