我想检查我的 docker 容器中是否存在一个名为mysqlserver. 容器是一台 Linux 机器。
以下命令正在运行:
# both commands print the current working directory
docker exec -it mysqlserver pwd
# output: /
docker exec -it mysqlserver 'pwd'
# output: /
Run Code Online (Sandbox Code Playgroud)
所以我假设我可以检查文件夹的存在,如:
docker exec -it mysqlserver test -d /var
# output: nothing
Run Code Online (Sandbox Code Playgroud)
即使是不存在的文件夹也不会输出任何内容:
docker exec -it mysqlserver test -d /var
# output: nothing
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能评估容器内是否存在文件夹?
该test命令不输出任何内容。如果测试成功,它只返回 0(真),否则返回 1(假)。
如果需要输出,则需要链接第二个命令。例如
test -d /var/some/dir && echo 'It Exists'
Run Code Online (Sandbox Code Playgroud)
要在容器中执行此操作,您需要使用 shell:
docker exec -it mysqlserver sh -c "test -d /var/some/dir && echo 'It Exists'"
Run Code Online (Sandbox Code Playgroud)
请仔细注意引号。
| 归档时间: |
|
| 查看次数: |
6902 次 |
| 最近记录: |