curl 명령으로 특정 폴더에 파일 저장
셸 스크립트에서 특정 URL에서 파일을 다운로드하여 특정 폴더에 저장합니다.파일을 특정 폴더에 다운로드하기 위해 사용하는 CLI 플래그는 무엇입니까?curl
명령어 또는 그 외의 방법으로 결과를 얻을 수 있습니다.
컬링 패스를 줄 수는 없지만 CD를 다운로드하여 CD로 되돌릴 수는 있습니다.
cd target/path && { curl -O URL ; cd -; }
또는 서브셸을 사용합니다.
(cd target/path && curl -O URL)
두 방법 모두 경로가 존재하는 경우에만 다운로드됩니다. -O
는 리모트 파일명을 유지합니다.다운로드 후 원래 위치로 돌아갑니다.
파일명을 명시적으로 설정할 필요가 있는 경우는, small 을 사용할 수 있습니다.-o
옵션:
curl -o target/path/filename URL
그--output-dir
옵션은 컬 7.73.0부터 사용할 수 있습니다.
curl --create-dirs -O --output-dir /tmp/receipes https://example.com/pancakes.jpg
curl
(파일명을 지정하지 않고) 옵션도 없습니다만,wget
디렉토리는 상대적일 수도 있고 절대적일 수도 있습니다또, 디렉토리가 존재하지 않는 경우는, 자동적으로 작성됩니다.
wget -P relative/dir "$url"
wget -P /absolute/dir "$url"
효과가 있습니다.
curl http://centos.mirror.constant.com/8-stream/isos/aarch64/CentOS-Stream-8-aarch64-20210916-boot.iso --output ~/Downloads/centos.iso
여기서:
--output
를 사용하면 배치할 파일 및 확장 파일의 경로와 이름을 설정할 수 있습니다.
리다이렉션 사용:
이것은, 드롭 하는 경우에 효과가 있습니다.curl
지정된 경로에 파일을 다운로드했습니다.
curl https://download.test.com/test.zip > /tmp/test.zip
"test.zip"은 리다이렉트된 파일에 라벨을 붙이는 임의의 이름입니다.같은 이름일 수도 있고 다른 이름이 될 수도 있습니다.
사실 @oderibas 솔루션을 선호합니다만, 고객님의 디스트로가 컬 버전 7.73.0 이후를 지원할 때까지 이 문제를 해결할 수 있습니다.
Windows 의 powershell 의 경우, 상대 패스와 파일명을 다음에 추가할 수 있습니다.--output
플래그:
curl -L http://github.com/GorvGoyl/Notion-Boost-browser-extension/archive/master.zip --output build_firefox/master-repo.zip
여기서 build_filder는 상대 폴더입니다.
wget 사용
wget -P /your/absolut/path "https://jdbc.postgresql.org/download/postgresql-42.3.3.jar"
Windows의 경우 PowerShell에서는curl
는 cmdlet의 에일리어스입니다.Invoke-WebRequest
다음 구문이 작동합니다.
curl "url" -OutFile file_name.ext
예:
curl "https://airflow.apache.org/docs/apache-airflow/2.2.5/docker-compose.yaml" -OutFile docker-compose.yaml
출처 : https://krypted.com/windows-server/its-not-wget-or-curl-its-iwr-in-windows/
다음은 배치를 사용하여 URL에서 안전한 파일 이름을 만들고 tmp/라는 이름의 폴더에 저장하는 예입니다.Windows나 Linux Curl 버전에서는 이 옵션이 없는 것이 이상하다고 생각합니다.
@echo off
set url=%1%
for /r %%f in (%url%) do (
set url=%%~nxf.txt
curl --create-dirs -L -v -o tmp/%%~nxf.txt %url%
)
위의 배치 파일은 단일 입력, URL을 사용하여 URL에서 파일 이름을 만듭니다.파일 이름을 지정하지 않으면 tmp/로 저장됩니다.txt. 즉, 모든 것을 할 수 있는 것은 아니지만 Windows에서 작업을 수행할 수 있습니다.
언급URL : https://stackoverflow.com/questions/16362402/save-file-to-specific-folder-with-curl-command
'programing' 카테고리의 다른 글
UITextView 플레이스 홀더 (0) | 2023.04.19 |
---|---|
쉬운 영어로 된 우코넨의 접미사 트리 알고리즘 (0) | 2023.04.19 |
SQL Server에서 구체화된 뷰를 작성하는 방법 (0) | 2023.04.19 |
의 의미.셀(.Rows).카운트 "A").End(xlUp).행 (0) | 2023.04.19 |
vba: 어레이에서 원하는 값 가져오기 (0) | 2023.04.14 |