Bash's {}
brace expansion syntax allows for creating easy permutations
# echo {b,c,d}{a,e,i,o,u}
ba be bi bo bu ca ce ci co cu da de di do du
Run Code Online (Sandbox Code Playgroud)
However it's not clear to me if/how it's possible to use this along with arrays except in very awkward use of $()
echo
and eval
Is there a simple way to use arrays with curly brace (permutation) expansion?
例如,想象一下(当然这不起作用):
CONS=( b c d )
VOWEL=( a e i o u )
echo …
Run Code Online (Sandbox Code Playgroud) 这有点间接,但可以使用mount
orlosetup
的“偏移量”参数安装带有磁盘映像的分区。
我希望能够使用保险丝在用户空间中做同样的事情
我的用例是在不允许构建作业具有 root 权限的自动构建服务器上构建磁盘映像,并且服务器不需要为特定构建作业进行自定义设置。
为了能够进行交叉编译,有一个技巧,您可以将静态 qemu 二进制文件复制到您的<different-arch-root-to-be>/usr/bin
文件系统中,当您 chroot 到该文件系统时,该文件系统具有非本机二进制文件,神奇的是,这些二进制文件可以由主机 cpu 执行,并且uname -a
类似的声明您位于目标架构上。最终结果是你可以得到非常简单的交叉编译。
我可以想象一种可行的方法,但需要chroot
注意qemu
。
是这样吗?我似乎找不到任何有关其工作原理的文档。
linux ×2
bash ×1
chroot ×1
filesystems ×1
fuse ×1
loop-device ×1
mount ×1
qemu ×1
shell-script ×1