Почему эта команда быстрого доступа KDE не работает?

Вы сами ответили на свой вопрос. Страница руководства для login.defsобъясняет:

UMASK (number)

The file mode creation mask is initialized to this value. If not specified, the mask will be initialized to 022.

useradd and newusers use this mask to set the mode of the home directory they create

It is also used by pam_umask as the default umask value.

/etc/profileвыполняется оболочкой входа в систему. Если вход не через оболочку, umask, установленный в /etc/profile, не действует.

Модуль

pam_umaskможно настроить для установки umask сеанса на значение, определенное в login.defs. По сравнению с настройкой umask в /etc/profile, umask, установленная в pam_umask, также эффективна в ситуациях, когда вход в систему не выполняет графический сеанс оболочки входа в систему (, сеанс ssh без оболочки ).

1
25.06.2021, 15:08
1 ответ

Конструкция$(...)(подстановка команд )является частью командного языка оболочки POSIX и требует наличия оболочки для ее интерпретации. Насколько я могу судить, средства запуска приложений, включенные в среду рабочего стола, не обязаны уметь интерпретировать командный язык оболочки; чтобы ошибиться на всякий случай, я бы предположил, что они могут только execиспользовать файл и передать ему список аргументов.

Вы должны иметь возможность определить сочетание клавиш, которое вызывает что-то вроде:

sh -c '"$(kreadconfig5...)"'

Подстановка команды заключена в двойные кавычки, чтобы гарантировать, что она не завершится ошибкой, если путь к файлу, созданный подставленной командой, содержит символы пробела.
Для полноты отметим, что это все равно не удастся, если имя исполняемого файла заканчивается одним или несколькими символами новой строки (крайне маловероятно, конечно ).

1
28.07.2021, 11:22

Теги

Похожие вопросы