/etc/init.d/functions и action в centos и debian - PullRequest
0 голосов
/ 11 ноября 2018

в центах.

source  /etc/init.d/functions
action "work done"  /bin/true
action  "wrong"  /bin/false

Это показано, как показано ниже.

work done   [OK]
wrong       [FAILED]

Я обнаружил, что в debian нет /etc/init.d/functions, как тогда использовать action "work done" /bin/true?
Скопируйте файл /etc/init.d/functions в Centos в USB, и скопируйте файл /etc/init.d/functions из USB в мой Debian?

1 Ответ

0 голосов
/ 13 ноября 2018

Вероятно, вы можете скопировать этот сценарий, но могут быть некоторые файлы и двоичные файлы, которые использует сценарий, которые доступны только в CentOS.Если вам нужен только причудливый вывод функции action(), вот минимальный скрипт для этого.

success() {
  echo -en "\\033[60G[\\033[1;32m  OK  \\033[0;39m]\r"
  return 0
}

failure() {
  local rc=$?
  echo -en "\\033[60G[\\033[1;31mFAILED\\033[0;39m]\r"
  [ -x /bin/plymouth ] && /bin/plymouth --details
  return $rc
}

action() {
  local STRING=$1
  echo -n "$STRING "
  shift
  "$@" && success $"$STRING" || failure $"$STRING"
  local rc=$?
  echo
  return $rc
}

Обратите внимание, однако, что оригинальный скрипт functions делает больше, проверяя тип консоли и другиепрочее.

...