Linux 如何编写一个bash脚本来自动输入;“码头集装箱”;还有做其他事情?
我想实现一个自动的Linux 如何编写一个bash脚本来自动输入;“码头集装箱”;还有做其他事情?,linux,bash,shell,docker,Linux,Bash,Shell,Docker,我想实现一个自动的bash脚本,它进入一个正在运行的docker容器,并执行一些操作: # 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容器,但不执行其他操作 是否
bash
脚本,它进入一个正在运行的docker容器
,并执行一些操作:
# 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容器
,但不执行其他操作
是否有任何方法可以自动进入docker容器并执行其他操作?您可以使用
bash-c
:
docker exec -it hammerdb_net8 bash -c 'cd /data/oracle/tablespaces/; pwd; ls'
要运行一系列命令,请使用:
docker exec-i hammerdb_net8 bash“docker…bash使用'EOF'
使所有行不受参数扩展的影响,例如,您可以使用p=$PWD
并且$PWD
在当前shell中不会被扩展。您能给出一个例子吗?
docker exec -i hammerdb_net8 bash <<'EOF'
cd /data/oracle/tablespaces/
pwd
ls
EOF