如何编写一个自动输入“docker container”并执行其他操作的bash脚本?(How to write a bash script which automate entering “docker container” and doing other things?)
我想实现一个自动bash脚本,它进入一个正在运行的docker container ,并做一些事情:
# cat docker.sh #!/bin/bash -x docker exec -it hammerdb_net8 bash cd /data/oracle/tablespaces/ pwd在终端上执行脚本:
# ./docker.sh + docker exec -it hammerdb_net8 bash [root@npar1 /]#输出显示只登录docker container ,但不会执行其他操作。
是否有任何方法可以自动输入docker container并执行其他操作?
I want to implement an automatic bash script which enters a running docker container, and do some stuffs:
# cat docker.sh #!/bin/bash -x docker exec -it hammerdb_net8 bash cd /data/oracle/tablespaces/ pwdExecuting the script on terminal:
# ./docker.sh + docker exec -it hammerdb_net8 bash [root@npar1 /]#The output shows only login the docker container, but won't do other operations.
Is there any method to automate entering docker container and doing other things?
最满意答案
你可以使用bash -c :
docker exec -it hammerdb_net8 bash -c 'cd /data/oracle/tablespaces/; pwd; ls'要运行一系列命令,请在BASH中使用here-doc :
docker exec -i hammerdb_net8 bash <<'EOF' cd /data/oracle/tablespaces/ pwd ls EOFYou can use bash -c:
docker exec -it hammerdb_net8 bash -c 'cd /data/oracle/tablespaces/; pwd; ls'For running a series of commands use here-doc in BASH:
docker exec -i hammerdb_net8 bash <<'EOF' cd /data/oracle/tablespaces/ pwd ls EOF更多推荐
发布评论