У рыбной раковины у меня две функции:
function be bundle exec $argv end function rdbm rake db:migrate end Я обычно использую их вместе, то есть, bundle exec rake db:migrateно не всегда, поэтому я хотел бы держать их отдельно.
Проблема в том, что я не могу сделать это с псевдонимами, которые я определил в настоящее время:
Сказать, что be rdbmрасширяет первую функцию ( be), но передается rdbmкак литеральная строка (не раскрывается).
Я также попробовал abbr:
abbr be 'bundle exec' abbr rdbm 'rake db:migrate' Но только первое расширяется.
Я понял, что можно вызывать функции из других функций:
function be_rdbm echo (be rake db:migrate) end но это не разъединяет две функции, так как вторая не используется.
Кстати, я хотел бы знать, можно ли улучшить этот последний пример. Я не понимаю, почему это echoнеобходимо (или какие есть альтернативы), но я не могу поставить круглые скобки в качестве всего содержимого функции.
Это круто и спасибо. Но это не истинное объединение команд. Его не обязательно достаточно, чтобы передать второй результат через эхо. Что делать, если это интерактивный скрипт, например.