chroot可以理解为又开了个子终端,其后的命令还是属于当前终端,所以不会被自终端执行,只有收到exit命令退出子终端,剩余的命令才会继续执行。
如果希望在脚本进入chroot环境以后在子终端中执行命令,可有两种方法:
1、chroot本身可以携带一个命令作为参数:
chroot /root_path command
所以可以利用这个去执行一个脚本,不太推荐
2、利用cat命令:
#!/bin/bash
cat <<- EOF | chroot /test/squashfs-root
pwd
echo "1"
pwd
echo "2"
EOF
我在用的时候,只能在里面加一些简单命令,我加的for i in {1..10} 循坏的循环因子 i 一直为空,也不知道为什么,有解决的兄弟可以分享出来