AIX 복사 시 디렉토리 생성

AIX 복사 시 디렉토리 생성

AIX에서 파일을 복사할 때 존재하지 않는 디렉토리를 생성하는 가장 좋은 방법은 무엇입니까? 이 같은:

ssh server1 'cp -R ~user1/bin/log ~user2/bin/log'
cp: /u/user2/bin/log: No such file or directory
ssh server1 'cp -r ~user1/bin/log ~user2/bin/log'
cp: /u/user2/bin/log: No such file or directory

~user2/ 디렉터리는 있지만 ~user2/bin 디렉터리는 없습니다.

답변1

한 가지 가능성은 tar 파이프라인을 사용하는 것입니다.

(cd ~user1/ && tar -c -p -f - bin/log) | (cd ~user2/ && tar -x -p -f -)

이는 서브쉘을 사용하여 소스 위치의 상위 디렉토리로 변경한 다음 tar"log" 디렉토리의 아카이브를 stdout에 쓰도록 지시합니다. 두 번째 서브셸은 대상의 상위 디렉터리로 변경된 다음 tar파이프의 stdin을 통해 오는 아카이브를 추출하도록 지시합니다. 해당 명령이 성공한 경우에만 실행되도록 명령 tar이 연결됩니다 .&&cd

tar들어오는 내용을 간단히 인쇄하도록 두 번째에 지시하여 이를 테스트할 수 있습니다 . -x을(를) 으로 변경하면 됩니다 -t. -pwith를 사용해 -t도 문제가 되지 않으며 해를 끼치지도 않습니다.

(cd ~user1/ && tar -c -p -f - bin/log) | (cd ~user2/ && tar -t -p -f -)

관련 정보