Я пишу сценарий bash, который запускает каждый из своих аргументов как команду. Это работает для команд в моем PATH
, но не для псевдонимов. Я могу напрямую вызвать псевдоним в сценарии, но я не могу вызвать псевдоним, который был передан в качестве аргумента.
Проблема (я предполагаю) состоит в том, что псевдонимы раскрываются перед переменными. Есть ли способ запустить псевдонимы из переменной?
Пример скрипта:
#!/bin/bash
# File: runall
shopt -s expand_aliases
source ~/.aliases
while (( "$#" )); do
$1
shift
done
runall "echo test"
работает, но runall "myalias"
даетrunall: line 8: myalias: command not found
eval
переменных?