Вывод wget на основе регулярного выражения

Вы делаете его излишне сложным. Вам нужна лишь пара удобных функций:

enc () {openssl enc -aes-256-cbc -in "$@"}
dec () {openssl enc -d -aes-256-cbc -in "$@"}

Если вы не задали openssl пароль или ключ, он запросит его, что означает, что вам не нужно встраивать его в команду.

Для шифрования файла:

enc foo > foo.enc

Для расшифровки файла:

dec foo.enc

Которые, естественно, могут быть переданы другим командам:

dec foo.enc | wc -l
0
27.03.2018, 11:32
1 ответ

Думаю, вам нужна функция, т.е.:

function dl() {
  URL="$1"
  NAME=$(egrep -io 'filename[0-9]{1,2}\.ext' <<< "$URL")
  echo wget -O "$NAME" "$URL"
}

Теперь вы можете использовать функцию dl:

$ for url in $(cat url_list.txt); do dl $url; done
wget -O Filename01.ext https://server.com/Nonsense%20text%20Actual%20Filename01.ext<br>
wget -O Filename02.ext https://server.com/Non%20essential%20text%20Actual%20Filename02.ext<br>
wget -O Filename03.ext https://server.com/Not%20required%20text%20Actual%20Filename03.ext<br>
0
28.01.2020, 04:27

Теги

Похожие вопросы