Обычный способ - использовать declare -f
, который распечатает очень длинный список функций в интерактивной оболочке bash. Но внутри скрипта, поскольку большинство внешних функций не определены, список будет коротким и полезным.
Итак:
declare -f
Перечислим функции (и определения). И:
declare -F
напечатает только список функций имени.
Существует (не такой простой в использовании) параметр extdebug
, который, если он установлен, номера строк определения каждой функции также будут напечатаны с помощью declare -F
. Но extdebug
должен быть установлен во время загрузки скрипта (так как все строки должны быть известны, чтобы их можно было перечислить).
Думаю, вам нужен совет номер 9 на этой странице.
По сути, загрузка нескольких файлов с помощью wget -i,
$ cat > download-file-list.txt
URL1
URL2
URL3
URL4
$ wget-i download-file-list.txt
В качестве альтернативы вы можете использовать старый добрый ftp. Настройте строфу для ftp.example.com в файле ~/.netrc
:
machine ftp.example.com
login ftp
password anonymous
... убедитесь, что файл не может быть прочитан кем-либо еще:
chmod 600 ~/.netrc
Затем отправьте ftp
команды через здесь -документ для извлечения файлов:
ftp ftp.example.com <<'EOF'
prompt
mget file*.zip
bye
EOF
Некоторые ftp-клиенты могут поддерживать параметр -i
для отключения запроса mget
, что устраняет необходимость в команде prompt
в списке.
При ее использовании будет установлена одна сессия ftp для всех передач файлов.