我有一个无法解决的 Linux 问题。我尝试解决它 - 我也尝试搜索论坛,但没有找到任何线索 - 或解决它的方法。
问题:
编写命令来计算 Vegetables 和 Fruits 文件夹中的文件数量。答案必须保存在 CounterFood 文件中。允许多个命令。
执行这些命令后,系统会提示您执行以下操作:
必须将 Vegetables 和 Fruits 文件夹中的文件名中的字符总数添加到 CounterFood 文件中。可以使用多个命令。
尝试
我想过进行算术插入 - 但我没有找到这样的命令。
ls -l . Vegetables Fruits | egrep -c '^-' >> CounterFood
我试图计算有多少个文件 - 但我无法将这两个文件夹一起计算。然后我想出了这个 - 我的想法是访问文件夹 - 并找到所有文件 - 然后对它们进行计数
find Vegetables Fruits -type f | wc - >>CounterFood
问题的继续与开头直接相关。但一开始对我来说并不顺利——我不明白为什么。
答案1
第1部分
find Vegetables Fruits -type f -printf "x" | wc -c > CounterFood # Print "x" for each filename and count them
第2部分
如果你的意思是添加那么这会起作用
namelen=$(find Vegetables Fruits -type f -printf "%f" | wc -c) # Characters in file names
counterfood=$(cat CounterFood) # Previous total
echo $((namelen + counterfood)) > CounterFood # Add them together
如果你的意思是附加那么这会起作用
find Vegetables Fruits -type f -printf "%f" | wc -c >> CounterFood # Characters in file names
答案2
两个文件夹中的文件总数:
expr `ls -l Vegetables | sed 1d | wc -l` + `ls -l Fruits | sed 1d | wc -l` >> CounterFood
两个文件夹中文件名的总字符数:
expr `ls Vegetables | wc -c` + `ls Fruits | wc -c` >> CounterFoods
希望这会有所帮助!