Да.
Скрипт может работать сколько угодно долго. Это связано с тем, что обычное время ожидания для запуска службы (90 секунд )не включено для Type=oneshot
. Однако, если вы хотите установить тайм-аут для службы Type=oneshot
, вы можете просто установить его вручную.
TimeoutStartSec=
Configures the time to wait for start-up. If a daemon service does not signal start-up completion within the configured time, the service will be considered failed and will be shut down again. Takes a unit-less value in seconds, or a time span value such as "5min 20s". Pass "infinity" to disable the timeout logic. Defaults to DefaultTimeoutStartSec= from the manager configuration file, except when Type=oneshot is used, in which case the timeout is disabled by default
Другая причина не использовать Type=simple
заключается в том, что статус вашей службы будет отображаться как "запущен" во время ее работы. Type=oneshot
вместо этого покажет статус "запуск"... возможно, это не идеально, но я думаю, что это имеет больше смысла.
Вы можете использовать это в оболочке со скриптом.
X[0]="b"
X[1]="c"
X[2]="d"
X[3]="e"
for i in {0..3}
do
echo A${X[$i]}\GT
done
С zsh
вместо bash
вы можете сделать что-то похожее, заменив [BCDE]
на{BCDE}
:
$ set -o braceccl
$ print -l A{BCDE}GT
ABGT
ACGT
ADGT
AEGT
Если ваш ввод гарантированно содержит только символы слова и символы [
, ]
:
set -o braceccl
input='A[BCDE]GT'
eval "output=( ${${${input//[^][[:IDENT:]]}//\[/{}//\]/\}} )"
print -l $output