首页 > 解决方案 > 无法打开 没有这样的文件或目录

问题描述

我正在尝试将总计数的输出存储到一个变量中,然后打印该变量。

for i in `cat /home/retailer.sh`;do file = "$(grep $i /home/DD.inventory.loaded_master_list.txt|sort -u|wc -l)";echo $file;done

/home/retailer.sh
哈格盖特
_

/home/DD.inventory.loaded_master_list.txt  

/dailydata_hershey/prd/work/all/2109/delivery/POSDATA_FINAL.GAT.20200201.dat /dailydata_hershey/prd/work/all/2109/delivery/POSDATA_FINAL.HAG.20200201.dat

我得到以下错误 =: cannot open = (No such file or directory)

标签: bashshellunix

解决方案


file = "$(...)"- 你必须使用file="$(...)"(没有空格)。

否则它将被解释为命令。(例如file,参数为=

供将来参考,shellcheck.net是捕获此类事物的绝佳资源。只需将您的脚本复制粘贴到框中,它就会告诉您所有错误、如何修复它们,以及一些有关潜在错误的其他警告。


推荐阅读