bash - 无法打开 没有这样的文件或目录
问题描述
我正在尝试将总计数的输出存储到一个变量中,然后打印该变量。
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)
解决方案
file = "$(...)"
- 你必须使用file="$(...)"
(没有空格)。
否则它将被解释为命令。(例如file
,参数为=
)
供将来参考,shellcheck.net是捕获此类事物的绝佳资源。只需将您的脚本复制粘贴到框中,它就会告诉您所有错误、如何修复它们,以及一些有关潜在错误的其他警告。
推荐阅读
- vim - 从命令行使用过滤的文件列表打开 netrw
- python - Python x Tweepy:如何从列表中包含的所有用户中提取推文
- android - 从 Intent.ACTION_GET_CONTENT 读取 Uri 是否需要 READ_EXTERNAL_STORAGE 权限
- javascript - 强连通分量算法
- oop - 优化护士分配
- django - 在选择 django orm 中进行多项选择
- encryption - 为什么 BCrypt 对彩虹表特别有效?
- neo4j - 根据节点属性创建订单关系
- javascript - 如何在另一个组件的渲染方法中渲染存储在数组中的 React 组件
- pytorch - pytorch 0.4.0 广播在优化器中不起作用