今天刚开始玩鱼壳,并试图翻译Bash功能。它有效,但我想知道是否有一种更优雅的方式来传递鱼的所有参数。
在Docker容器中运行Elixir命令的Bash函数:
function elixir () {
docker run --rm -it -v $(pwd):/app -w /app elixir \
sh -ci "elixir $*"
}
鱼类功能:
function elixir --description "command to run Elixir in Docker"
docker run --rm -it -v (pwd):/app -w /app elixir elixir $argv[1..-1]
end
谢谢!
答案 0 :(得分:5)
在fish中,所有变量都是列表,$var
扩展到整个列表,每个元素一个参数(因此没有单词分裂或任何东西)。
所以只需$argv
即可,无需指定[1..-1]
。