Я думаю, вы можете сделать что-то вродеgit annex get
Вы также можете попробовать включить « прямой режим », что должно вернуть ваши файлы в рабочее дерево вместо символических ссылок.
Если $gitea_backup_dir
не существует или каким-либо образом делает ls
несчастным, ls
напишет сообщение об ошибке в STDERR
.
Вы можете отбросить весь поток ошибок, добавив 2>/dev/null
к своей команде.
ИМХО, лучше:
if ([[ -d "$gitea_backup_dir" ]] && \
[[ $(stat --format="%h" "$gitea_backup_dir") -gt 2 ]] ) ; then
echo "Nonempty"
else
echo "Empty"
fi
Сначала убедитесь, что каталог существует, а затем посмотрите, не превышает ли количество жестких ссылок в каталоге (количество файлов и подкаталогов в каталоге )2 (в каждом каталоге есть как минимум 2 записи:.
и ..
).