【发布时间】:2019-05-15 23:45:33
【问题描述】:
我有this 代码在给定一些参数的情况下生成随机目录结构,并且运行违反 eval 限制,所以我尝试使用 Xargs 来按照 @TheOtherGuy 解决问题,但我做错了。
DIRCMD="mkdir -p $OUTDIR/\"$FLDIR\"/$FLCHILDREN"
在 VS CODE 中观看
declare -- DIRCMD="mkdir -p ./rndpath/\"LUl\"/{\"KYh\",\"NQ \",\"NU\",\"Hjn\",\"lS\",\"TEW\"}/{\"Rbf\",\"DU\",\"N4\",\"Da7o\",\"aNK\",\"2oS\"}"
然后做
eval "$DIRCMD"
除非我达到 eval 扩展限制,否则一切正常。
根据@ThatOtherGuy 试图解决我尝试过的限制
dircmd1="printf "%s\0 " $OUTDIR/\"$FLDIR\"/$FLCHILDREN"
and
eval "$dircmd1" | xargs -0 mkdir -p
[admin@119 rndpath]$ tree -a --dirsfirst -s ./
./
└── [ 4096] LUl
└── [ 4096] {KYh,NQ,NU,Hjn,lS,TEW}
└── [ 4096] {Rbf,DU,N4,Da7o,aNK,2oS}
我做错了什么?
【问题讨论】:
-
我尝试正确格式化代码,看看是否有帮助,但我仍然不知道你的代码应该做什么,或者你得到什么错误消息或其他失败,或者你的问题是。请尝试澄清您的问题并提供真实的minimal reproducible example。如果不清楚,请参阅How to Ask。
-
所以你想要
mkdir -p LUl/{Kyh,NQ,NU,Hjn,lS,TEW}/{Rbf,DU,N4,Da7o,aNK,2oS}的参数化版本? -
我找到了答案... DIRCMD="printf \"%s\0\" ./\'$FLDIR\'/$FLCHILDREN" 然后 eval "$DIRCMD" | xargs -0 mkdir -p
标签: bash