Может кто-нибудь помочь мне понять значение этой строки из сценария bash?
[ "$2" = "" ] && >$1 && return
Может кто-нибудь помочь мне понять значение этой строки из сценария bash?
[ "$2" = "" ] && >$1 && return
&&
- это оператор «и»: он выполняет левую команду, а если эта команда истинна (то есть выходит со статусом 0), то выполняет правую команду.
[ "$2" = "" ]
проверяет, является ли второй параметр в функции включения (или сценарий, если используется вне функции) пустым. (Если было менее двух параметров, $2
пусто.)
>$1
- пустая команда, перенаправленная в файл, имя которого является первым параметром $1
. Это создает пустой файл, если он не существует, и очищает файл, если он уже существует. Эта команда может завершиться ошибкой, если у сценария нет разрешения на создание или изменение файла.
return
выходит из ограждающей функции.
Таким образом, значение этой строки таково: если $2
пусто, создайте или обрежьте файл с именем $1
и, если это удастся, вернитесь из функции.