Поскольку настройки GNOME обычно сохраняются через GSettings API, а некоторые из этих файлов являются двоичными файлами/базами данных, лучше всего полагаться на инструмент dconf
:
.
Для экспорта настроек:
dconf dump / > dconf-settings.ini
Для импорта настроек:
dconf load / < dconf-settings.ini
В большинстве случаев вы можете сохранить содержимое $XDG_CONFIG_HOME/dconf
(, оно представляет ~/.config/dconf
), но это не подходит для git
, так как эти файлы не являются открытым текстом.
Этот экспорт настроек Gnome также будет содержать все настройки, связанные с Mate Desktop и Cinnamon Desktop , поскольку они являются объектами внутри корневой схемы(/
). Чтобы экспортировать только настройки этих рабочих столов:
Корица:
dconf dump /org/cinnamon/ > dconf-cinnamon.ini
Напарник:
dconf dump /org/mate > dconf-mate.ini
Резервное копирование пользовательских тем.
Для резервного копирования пользовательских тем/значков достаточно сжатия папок ~/.icons
и ~/.themes
. Возможно, вам следует сохранить исходные файлы тем, которые у вас уже есть, в домашнем каталоге...
Использование жесткой новой строки в строке в кавычках допустимо.
Хотя лично я бы избегал этого, если вам нужна только новая строка :Я считаю, что это выглядит странно, и есть небольшой риск случайного попадания лишних пробелов в конце первой строки (, так что вы получите например<space><newline>
). Но это только я.
Подстановка команд действительно удаляет конечные новые строки, но только те. Обходной путь состоит в том, чтобы убедиться, что последний символ не является новой строкой, а затем удалить этот символ.
Оба они должны дать вам новую строку:
nl1='
'
nl2="$(printf '\nx')"
nl2="${nl2%x}"