tar wget 결과 [닫기]

tar wget 결과 [닫기]

wget파일을 원 tar하고 명령을 사용하면 간단할 것 같지만 완료할 수 없습니다. 나는 여러 가지를 시도했습니다.

wget <url> | tar -cvz file.gz.tar -

tar -cvzf file.tar `wget <url>`

wget -qO <url> | tar -cvf file.tar

wget <url> -O - | tar

도움이 필요하세요?

답변1

정말로 파일을 원하시나요 tar, 아니면 압축된 형식으로 파일을 다운로드하고 싶으신가요? 파일을 압축하면 (압축되지 않은) 파일이 (압축되지 않은) 아카이브로 묶이게 됩니다. 파일을 압축 파일로 다운로드하려면 다음을 사용할 수 있습니다.

wget -qO - <url>|gzip -c - > file.gz

답변2

이 방법으로는 입력 스트림을 처리할 수 없습니다. 처리할 수 있도록 설계되었습니다.문서. 설명하는 프로필을 성공적으로 생성했다면 어떤 모습일까요? 어떻게 포장을 풀겠습니까? 파일 이름은 생성할 필요가 없으며 데이터만 생성하면 됩니다.

내 생각에 가장 좋은 방법은 파일을 가져와 두 개의 개별 명령으로 압축하는 것입니다. 파일을 드라이브에 유지하지 않으려면 tar --remove-files플래그를 사용할 수 있습니다.

wget http://example.com/filename && tar cvzf file.tgz --remove-files filename

답변3

원하는 대로 작동하지 않습니다. 파일(분명히 파일 이름 포함)을 tar에 저장해야 합니다. 다운로드한 콘텐츠 를 tar.tarstdin

즉, 표준 UNIX 명령을 사용하여 이를 달성할 수 있는 방법을 찾지 못했습니다. 분명히 당신은 예를 들어 pythonand requesttarfile모듈을 사용하여 몇 가지 내용을 직접 작성할 수 있습니다. 코딩에 능숙하다면 그리 어렵지 않을 것입니다.

그때까지 또는 사용 가능한 Unix 명령에 의존해야 하는 경우 임시 파일을 다운로드하고 파일을 벗긴 다음 삭제하는 방법을 고수해야 합니다. 파일 이름을 여러 번 지정할 필요가 없도록 변수를 사용하는 것이 좋습니다.

DOWNLOAD=<FILENAME>; wget <DOMAIN>/$DOWNLOAD && tar -cvf $DOWNLOAD.tar --remove-files $DOWNLOAD

답변4

wget -qO - <url> |gzip -c > file_name.gz

-c표준 출력용. 이것이 >사용됩니다. 표준 출력 라이브러리를 사용하여 파일을 wget에서 file_name.gz로 직렬화합니다.

-qO출력 파일 보내기

관련 정보