Я пытаюсь создать псевдоним или функцию bash, которая может передавать текст на стандартный ввод команды unix bc.
Я сначала попытался:
alias semitone="echo \"scale=10; e(l(2.))\" | bc"
Какой bash анализирует нормально, но происходит сбой с ошибкой времени выполнения bc:
Runtime error (func=(main), adr=12): Function l not defined.
В тчш:
alias semitone 'echo "scale=10; e(l(2.)/12.)" | bc'
работает совершенно нормально и дает правильный вывод:
1.0594630943
Я также попытался использовать функцию bash:
semitone() { echo "scale=10; e(l(2.)/12.)" | bc ; }
который возвращает ту же ошибку времени выполнения bc. Не уверен, как вывод становится манипулированным. Любое понимание?
echo "scale=10; e(l(2.)/12.)" | bc
по запросу. - person Charles Duffy   schedule 06.03.2014