使用google/zx执行tar命令提示“No such file or directory”问题求助
zx执行tar命令报错的解决方法
问题出在你使用zx的方式上:你把拼接好的完整tar命令字符串传给$...``时,zx会将整个字符串当作单个命令文件名去查找,而非解析为tar命令加参数,这就导致bash报错找不到这个“长命令名”的文件。
正确的写法不需要手动拼接完整命令字符串,直接在zx的模板语法中拆分命令与参数:
const tarCommand = await $`tar czf ${absoluteBackupFile} -P ${folder}`.exitCode;
zx的$...``语法会自动处理变量的引号、转义和参数拆分,完全等价于你手动执行命令的效果,既安全又能避免解析错误。
内容的提问来源于stack exchange,提问作者Seldon Stone
相关产品推荐
相关产品推荐

