如何在 chroot 环境中执行 for 循环
how to execute for loop inside chroot enviroment
执行此脚本,它 returns 变量 i 中没有任何内容,实际上它并没有创建解决此问题的方法
chroot $ROOT /bin/sh -c "for i in ../autoconf-patch/* ; do patch < $i ; done; ./configure ; make install "
$i returns 没什么
/bin/sh : 语法错误; “;”意外的(期待词)
意味着它认为“;”在命令 patch < $i 之后,这意味着 $i 为空并抛出该错误
尽量使用单引号,例如:
/bin/sh -c 'i=3; echo $i'
如果你使用双引号 "
变量将被扩展,你可以从你的例子中尝试这个:
chroot $ROOT /bin/sh -c 'for i in ../autoconf-patch/* ; do patch < $i ; done; ./configure ; make install'
执行此脚本,它 returns 变量 i 中没有任何内容,实际上它并没有创建解决此问题的方法
chroot $ROOT /bin/sh -c "for i in ../autoconf-patch/* ; do patch < $i ; done; ./configure ; make install "
$i returns 没什么 /bin/sh : 语法错误; “;”意外的(期待词) 意味着它认为“;”在命令 patch < $i 之后,这意味着 $i 为空并抛出该错误
尽量使用单引号,例如:
/bin/sh -c 'i=3; echo $i'
如果你使用双引号 "
变量将被扩展,你可以从你的例子中尝试这个:
chroot $ROOT /bin/sh -c 'for i in ../autoconf-patch/* ; do patch < $i ; done; ./configure ; make install'