Я написал короткий сценарий для выполнения задачи для проекта, над которым я работаю. Jist - это две его функции с предварительно сконфигурированными параметрами и установкой оператора if, которая ведет к go. Тем не менее, потенциально существует больше переменных, которые мне нужно учитывать при этом, я решил, что могу сделать это, добавив еще один параметр. Однако я не понял, какие дополнительные функции мне нужно настроить.
Итак, формула выглядит примерно так:
function1 () {
foo $1 $2 -etc -etc -etc}
function2 () {
foo $1 $2 -cte -cte -cte}
if [ X = Y ]
then $(function1 $1 $2)
else $(function2 $1 $2)
Я мог бы просто расширить это, определив больше функций. , однако, поскольку дополнительные формулы, вероятно, будут такими же, хотя с добавлением одного или двух параметров, мне интересно, если вместо записи нескольких функций можно просто добавить параметры к предыдущей функции во время if statment.
Понятия не имею, как это должно быть, но для демонстрации скажем что-то вроде этого:
if [ X = Y ] && [ Y = Z ]
then $(function1 $1 $2 '--optionA')
else $(function1 $1 $2)
EDIT: Вот мой код:
function wpull_init {
wpull $1 --warc-file "$ARCHIVELOC/$2/$2" --warc-cdx \
--warc-header="Operator:$ARCHIVEOPERATOR" \
--output-file $ARCHIVELOC/$2/$2.log --delete-after --database $ARCHIVELOC/$2/$2.db \
--convert-links --backup-converted -r -l inf --escaped-fragment --strip-session-id\
--restrict-file-names=windows \
--span-hosts-allow linked-pages,page-requisites --page-requisites --sitemaps \
--reject-regex "/login\.php" --no-check-certificate --no-robots \
--retry-connrefused --retry-dns-error --wait 1 --waitretry 600 --random-wait \
--timeout 60 --session-timeout 10800 --tries 3 \
--limit-rate 2000 --concurrent 5 \
--user-agent "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27" \
--quiet
}
function warc-setup {
if [[ -f $ARCHIVELOC/$2/$2.warc.gz ]];
then echo "$2.warc.gz exists, running append" && sleep 2 && wpull_init $1 $2 '--warc-append'
else echo "No file exists, ensuring directory exists for files" && mkdir -p "$ARCHIVELOC/$2" && sleep 2 && echo "Starting up wpull_init" && sleep 2 && wpull_init $1 $2
fi}
warc-setup $1 $2
я бы хотел добавить параметр --war c -append в исходную функцию wpull_init на этапе формулы if.