windows - 查找容器 id 并停止 docker 容器的 bat 脚本语法是什么

标签 windows docker batch-file containers

我已经编写了这个 bat 脚本,但在第 3 行出现错误。

for /f %%i in ('docker ps -qf "name=^demo-application"') do set containerId=%%i
echo %containerId%
If "%containerId%" == ""
echo "No Container running"
ELSE
docker stop %ContainerId%
docker rm -f %ContainerId%
enter image description here

最佳答案

您的 if语法稍有偏差。该命令必须与 if 在同一(逻辑)行上。 .还有 else并且它之后的命令必须在同一(逻辑)行上。使用括号开始一个代码块(命令 block 的开头在语法上被视为有效命令):

for /f %%i in ('docker ps -qf "name=^demo-application"') do set containerId=%%i
echo %containerId%
If "%containerId%" == "" (
  echo "No Container running"
) ELSE (
  docker stop %ContainerId%
  docker rm -f %ContainerId%
)

关于windows - 查找容器 id 并停止 docker 容器的 bat 脚本语法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63545436/

相关文章:

c++ - 如何显示 Windows 资源管理器上下文(右键单击)菜单?

Sage Math 9.0 (Jupyter) 中的 Python Pandas - Windows

docker - 部署Splunk Docker镜像无法登录

shell - 在 Windows Powershell 和命令提示符中推送

batch-file - 将多个脚本打包到一个 .cmd 文件中

Windows:获取所有*当前*环境变量

windows - 发现 Mac OS & Linux 上的动态库依赖

python - 在docker上运行python网站

docker - Gradle 与 Docker 插件 (Palantir)

scripting - 在批处理脚本中获取文件父目录的全名