eval 變數作為 shell 腳本中的命令

eval 變數作為 shell 腳本中的命令

我有命令

docker container exec -it man docker service ps $1 --no-trunc --filter "desired-state=running" --format "docker container exec -it {{.Node}} docker container exec -it {{.Name}}.{{.ID}} bash"

它在標準輸出中傳回這樣的字串

docker container exec -it 13247a1833e9 docker container exec -it django_python.yhb1osnt1wn32hbkixhf50r38.hzsgyxbdkpitrsa6fdjiyi4qu bash

現在我想執行這個。

我的腳本在這裡,

msg=`docker container exec -it man docker service ps $1 --no-trunc --filter "desired-state=running" --format "docker container exec -it {{.Node}} docker container exec -it {{.Name}}.{{.ID}} bash"`

eval ${msg}

但它回傳錯誤

OCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: \"bash\\r\": executable file not found in $PATH": unknown

我該如何解決這個問題?

相關內容