如何写一个自动进入“docker集装箱”和做其他事情的bash脚本?
我想实现一个自动的bash
脚本,它进入一个正在运行的docker container
,并做一些事情:
# cat docker.sh #!/bin/bash -x docker exec -it hammerdb_net8 bash cd /data/oracle/tablespaces/ pwd
在terminal上执行脚本:
# ./docker.sh + docker exec -it hammerdb_net8 bash [root@npar1 /]#
输出显示只logindocker container
,但不会做其他操作。
是否有任何方法来自动进入docker container
和做其他事情?
你可以使用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 EOF