Если вы хотите сбросить все свои личные настройки, вы должны удалить все скрытые файлы в своем домашнем каталоге с помощью excetchion .bash_logout, .bashrc, .profile (эти три файла копируются из /etc/skel при создании пользователя).
Не всегда просто удалять настройки для конкретного приложения, поскольку скрытый файл или каталог, которые он создает, обычно при первом запуске, иногда может иметь имя очень загадочное (например,
Помимо патологических случаев поиск, подобный
find ~ -iname '*appname*'
, должен дать хороший намек на то, что удалить, чтобы сбросить приложение
all
Как отметил @htorque в комментарии ниже, в скрытых файлах и каталогах могут быть также данные, так как письма под .evolution , закладки браузера под .mozilla/firefox и т. п.
Итак, как всегда, у вас есть резервная копия ваших разумных данных.
Основываясь на этом ответе ServerFault Отправьте вывод bash -x в файл журнала без прерывания стандартного вывода, современные версии bash включают в себя BASH_XTRACEFD специально для указания альтернативного файлового дескриптора для вывода set -x
Например, вы можете сделать
#!/bin/bash
exec 19>logfile
BASH_XTRACEFD=19
set -x
command1
command2
...
для отправки вывода set -x в файл logfile при сохранении стандартных стандартных выходов и стандартных потоков ошибок для следующих команд.
Обратите внимание, что использование fd 19 произвольно - это просто должен быть доступный дескриптор (т. Е. Не 0, 1, 2 или другой номер, который вы уже выделили).
Steeldriver дал вам один подход. В качестве альтернативы вы можете просто перенаправить STDERR в файл:
script.sh 2> logfile
Это, однако, означает, что и выход, созданный с помощью опции set -x и любых других возникших ошибок, будет отправлен в файл. Решение Steeldriver будет перенаправлять вывод set -x, который, вероятно, вы хотите.