Bash: передать функцию в качестве параметра

Мне нужно передать функцию в качестве параметра в Bash. Например, следующий код:

function x() {
  echo "Hello world"
}

function around() {
  echo "before"
  eval $1
  echo "after"
}

around x

Должен выводить:

before
Hello world
after

Я знаю, что eval неверен в этом контексте, но это просто пример:)

Есть идеи?

76
задан cd1 15 April 2011 в 04:08
поделиться