在鱼壳下面与kubectl一起运行istioctl

时间:2017-06-01 03:11:08

标签: shell kubernetes fish kubectl istio

我刚刚在istio群集

上试用了kubernetes

然而,我在设置bookinfo示例应用程序时遇到了一些麻烦。这个命令在bash shell下运行得很好,但不是fish:

kubectl apply -f <(istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml)

我收到了这个错误:

Invalid redirection target: < (istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml)

对此有何看法?谢谢!

2 个答案:

答案 0 :(得分:3)

Fish不支持该进程替换语法。我们确实提供了另一种选择,尽管它并不完美。从鱼类提示中查看help psub。如果kubectl认识到-的成语意味着从stdin读取,我建议将其重写为

istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml | kubectl apply -f -
@Tuannvm提出的建议。坦率地说,我建议使用该变量作为执行该操作的规范方式,因为<(a_command)语法不需要AFAICT。可能有一些奇怪的情况,它有用,但我不能想到一个我的头脑,我已经使用UNIX超过30年。

答案 1 :(得分:2)

虽然有另一种方法可以做到这一点:

istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml | kubectl apply -f -

但是如果他们只需要复制/粘贴命令,它对新用户来说会更方便。