Заархивируйте файлы и прочитайте путь из текстового файла в bash

Противоположностью -z wordявляется -n word, или просто wordбез оператора:

foo=x
if [[ "$foo" ]] ; then
    echo "foo is not empty"
fi

Обратите внимание, что вы не можете проверить между пустым значением и неустановленным значением таким образом. Вам понадобится ${foo+x}, так как:[[ "${foo+x}" = x ]]будет истинным для любого заданного значения, даже для пустой строки.

-z,-nтакже будет работать со стандартным тестом [.. ], для них вам не нужен [[.. ]]. Разница здесь в том, что внутри [.. ]переменные должны быть заключены в кавычки.

0
04.02.2020, 22:48
1 ответ

То, что у вас есть, работает в моей системе. Хотя немного более идиоматическая строка linux может быть:

zip -@ zipfile.zip < log.txt
0
28.04.2021, 23:24

Теги

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