2017-06-01 185 views
0

我發現管道命令該指令在Windows CMD:視窗CMD泊塢窗命令管道

「管道」重定向程序或命令的第二程序或命令的輸出。

語法:

Command1 | Command2 

[Source](在最底部)

docker ps -aq | docker start然而或任何類似的組合只是返回錯誤。

在PowerShell中啓動所有停止的容器的唯一工作組合。

docker start $(docker ps -a -q -f "status=exited") 
+1

PowerShell是不太一樣的作爲CMD。你究竟得到了什麼錯誤? – vonPryz

+0

Yeap,我明白它只是通過CMD完成我的大部分工作,每次需要docker時打開powershell顯得麻煩。我得到''dokcer start'需要至少1個參數。' - > docker ps -aq | docker start – MattJ

+0

錯誤消息表明docker程序不從stdin讀取,並且必須具有指定的顯式命令行參數。 – lit

回答

0

您可以pipe into docker containers-i),但你不能管參數泊塢窗命令本身。

在PowerShell中使用一個循環開始停止容器的列表:

docker ps -a -q -f "status=exited" | ForEach-Object { docker start $_ } 

在CMD使用循環啓動停止容器的列表:

for /f "tokens=*" %i in ('docker ps -a -q -f "status=exited"') do docker start %i 
+0

PowerSheel沒有問題:)我正在尋找Windows CMD中的解決方案。 – MattJ

+1

@MattJ在CMD中你也是這樣做的。查看更新的答案。 –