У меня была такая же проблема. Пытался получить доступ к времени и дате, но ничего не произошло, и я получил сообщение об ошибке, но не каждый раз. Для меня решением было переустановить с помощью диспетчера синаптических пакетов следующий пакет под названием «libtimezonemap1», GTK + 3 виджета временной зоны.
Вы могли бы использовать Shell глобс вместо [Ф2]:
[Ф1]в глоб оболочки [Ф3] соответствует все папки в текущем каталоге. Это-цикл строительства заботится о правильном разбиение автоматически.
обратите внимание, что в зависимости от параметров оболочки, это может игнорировать скрытые папки (имя, начинающееся с .). Это поведение может быть изменено, чтобы соответствовать все файлы текущей сессии с помощью команды [Ф4].
и не забывайте всегда цитирую ваши переменные.
Оба ответа, написанные до сих пор, вызывают rmdir один раз в каталоге, но поскольку rmdir может принимать несколько аргументов, интересно: не существует ли более эффективный способ?
Можно просто сделать
rmdir */
, и это, безусловно, самый простой и эффективный способ, но он может вызвать ошибку в случае многих каталогов (см. Какая максимальная длина аргументов командной строки в gnome-терминале?). Если вы хотите, чтобы этот подход работал рекурсивно, включите опцию globstar shell с shopt -s globstar и используйте **/*/ вместо */.
С GNU find (и если мы этого не сделаем просто хочу использовать -delete), мы могли бы сделать
find -depth -type d -exec rmdir {} +
, который построит командную строку «почти так же, как xargs строит свои командные строки» (man find). Замените -depth на -maxdepth 1, если вы не хотите, чтобы он работал рекурсивно.
Третий и ИМО блестящий способ объясняется steeldriver в . Какова максимальная длина аргументов командной строки в gnome-terminal? :
printf '%s\0' */ | xargs -0 rmdir
Для построения списка аргументов с нулевым разделителем используется встроенная оболочка printf, этот список затем передается по каналу xargs, который вызывает rmdir точно так же часто, как это необходимо. Вы можете заставить его работать рекурсивно с shopt -s globstar и **/*/ вместо */, как указано выше.