
자체 서명된 인증서가 있는 서버에서 여러 이미지를 다운로드하여 사용하고 싶습니다 feh
. 단일 명령으로 이를 수행할 수 있습니까? 유사 curl -sk -b path_to_session_token url1 url2 | feh -
- feh
파일 중 하나만 제공한다는 점을 제외하면. 파일로 저장하지 말고 나중에 삭제하는 것이 좋습니다.
답변1
feh
일부 "프로토콜"이 구현되지 않으면 표준 입력으로 전송된 여러 이미지를 구별할 수 있는 방법이 없습니다.
임시 파일을 사용하지 않으려면 루프를 사용할 수 있습니다.
for url in 'url1' 'url2'; do
curl -skb token "$url" | feh -
done
그러면 각 이미지가 차례로 다운로드되어 표시됩니다. 당신이 원한다면"동시에", 약간의 앰퍼샌드를 추가합니다.
for url in 'url1' 'url2'; do
(curl -skb token "$url" | feh - &)
done
모든 것을 한 줄에 입력하거나 함수를 정의할 수 있습니다.
$ for url in 'url1' 'url2'; do curl -skb token "$url" | feh -; done
$ for url in 'url1' 'url2'; do (curl -skb token "$url" | feh - &); done
function feh_urls
{
for url; do
curl -skb token "$url" | feh -
done
}
$ feh_urls 'url1' 'url2'
URL이나 경로에 귀찮은 공백이 있을 수 있으므로 인용 시 주의하시기 바랍니다.(...위의 예에서 그런 실수를 하지 않았으면 좋겠습니다...). 함수가 필요한 경우 함수에 추가하면 .bashrc
매번 수동으로 다시 정의할 필요 없이 셸에서 사용할 수 있습니다.
완전성을 기하기 위해 여기에 일부 임시 파일과 관련된 작은 스크립트(물론 함수가 될 수 있음)가 있으며 일부 임시 파일 curl
과 feh
프로세스를 저장합니다. 버전에 따라 대신 wget
사용 했습니다 .curl
원격 파일 이름을 올바르게 가져오지 못할 수 있습니다.(물론 이미지에 다른 이름을 지정할 수도 있습니다.)
#!/bin/bash
img_dir=$(mktemp -d)
cd $img_dir
wget -q --no-check-certificate --load-cookie token "$@"
feh $img_dir/*
rm -r $img_dir
용법:
$ ./feh_urls.sh 'url1' 'url2'
여기서의 장점은 feh
여러 번 생성되지 않고 모든 이미지를 한 번에 로드할 수 있다는 것입니다(화살표 키를 사용하여 탐색).
당신은 또한 이것에 관심이 있을 수 있습니다이 페이지쿠키 관리에 대해 더 많은 정보를 원하시면 wget
, 또는이 페이지SSL/TLS 옵션에 대한 추가 정보