Мне никогда не приходилось добавлять эти export...
строки в .bashrc
за последние 2+ месяца в Linux. Для libreoffice -все же я должен добавить эти две строки:
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
в ~/.bashrc
и для каллигры я должен добавить все три:
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
в ~/.bashrc
на KDE Plasma Desktop.
Приведенный ниже код представляет собой лишь слегка измененный вариант конца моего ответа на ваш предыдущий вопрос по той же теме, в котором используются идентичные способы фактической пакетной обработки.
Если все файлы, которые вы хотите обработать, соответствуют шаблону ./*.xhtml
, т. е. если они имеют суффикс имени файла .xhtml
и находятся в текущем каталоге, вы сможете обработать все эти файлы с помощью любого из приведенные выше команды, используя простой цикл оболочки.
for name in./*.xhtml; do
xmlstarlet fo --omit-decl --recover --html "$name" >"$name".new
done
Команда в цикле выводит результирующий документ в файлы с тем же именем, что и у старых файлов, но с добавленным суффиксом имени файла .new
.
Чтобы запустить описанное выше для всех файлов XHTML в иерархии каталогов, то есть в каталоге с несколькими подкаталогами, вы можете использовать find
.
find. -type f -name '*.xhtml' -exec sh -c '
for name do
xmlstarlet fo --omit-decl --recover --html "$name" >"$name".new
done' sh {} +