cat *.sh > all.sh
объединит все файлы в один. Это немного нечисто, поскольку *.sh
также будет соответствовать all.sh
, если он уже существует, но перенаправление очистит all.sh
до того, как здесь запустится cat
.
Вы также можете просто написать один скрипт для получения всех остальных (вызовите егоincludeall.sh
):
for f in *.sh; do
if [ "$f" != "includeall.sh" ]; then
. "$f"
fi
done
Затем источник, который с . includeall.sh
. if
существует, чтобы избежать повторного -включения самого includeall
. Хотя было бы неплохо поместить скрипты a.sh
... z.sh
в отдельный каталог. Это сделало бы структуру каталогов чище и затруднило бы случайное получение неверных скриптов. for f in dir/*.sh; do. "$f"; done
в таком случае.
Текст справки для xkbset
предполагает, что любая функция AccessX может быть автоматически отключена по истечении заданного времени ожидания:
To set the AccessX expire controls:
xkbset exp <options>
where <options> may be all or any of (<ax_timeout> is the timeout (in
seconds) after which no user activity on X will cause the expiry; '-'
indicates the feature will be switched off, '=' incicates the feature
will be left unchanged, otherwise it will be switched on):
<ax_timeout>
[-|=]{bell|b}
[-|=]{repeatkeys|r}
[-|=]{mousekeys|m}
[-|=]{mousekeysaccel|ma}
[-|=]{accessx|a}
[-|=]{sticky|st} [[-|=]twokey|[-|=]latchlock]...
[-|=]{slowkeys|sl}
[-|=]{bouncekeys|bo}
[-|=]{feedback|f} [[-|=]dumbbell|[-|=]led|[-|=]feature|[-|=]slowwarn|
[-|=]slowpress|[-|=]slowaccept|[-|=]slowreject|[-|=]slowrelease|
[-|=]bouncereject|[-|=]stickybeep]...
[-|=]{overlay1|ov1}
[-|=]{overlay2|ov2}
[-|=]ignoregrouplock
И пример на Ubuntu wiki показывает следующую строку команды -для этого:
# setting the expiry of the accessx settings
/usr/bin/xkbset exp -bell -sticky -twokey -latchlock -accessx -feedback -stickybeep -led