![SFTP에서 오늘 날짜가 포함된 파일을 가져옵니다.](https://linux55.com/image/181269/SFTP%EC%97%90%EC%84%9C%20%EC%98%A4%EB%8A%98%20%EB%82%A0%EC%A7%9C%EA%B0%80%20%ED%8F%AC%ED%95%A8%EB%90%9C%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EA%B0%80%EC%A0%B8%EC%98%B5%EB%8B%88%EB%8B%A4..png)
파일 이름에 오늘 날짜가 포함되어 있으면 SFTP 서버에서 파일을 어떻게 가져오나요?
mget
파일을 가져오는 데 및 명령이 사용된다는 것을 알고 있지만 get
파일에 특정 타임스탬프가 있는 경우 파일 가져오기에 대한 정보를 찾을 수 없는 것 같습니다. 매일 아침 파일을 추출하는 스크립트 를 작성하려고 하는데 bash
파일 이름이 매일 바뀌네요.
SFTP에서 얻으려는 파일의 예:
get arc.20201005.*
내가 시도한 것:
get arc.$(date +%Y%m%d).*
get arc.(date +%Y%m%d).*
답변1
답을 찾았습니다. SFTP는 변수를 허용하지 않고 명령이 제한되어 있기 때문입니다. 대신 다음을 수행했습니다.
#Set Variables
date=(date +%Y%m%d)
echo -e "mget /directorypath/arc.$date.*" | sftp username@IPaddress
echo 명령의 -e는 백슬래시 이스케이프를 해석하므로 이 작업을 수행하는 데 핵심입니다.