所以我想写一个简单的命令,它比我当前目录中的文件数少一个。我有这个命令接近但一个人关闭。
ls | wc -l
如何将其传递给bc
,以便我可以减去一个?
谢谢!
答案 0 :(得分:0)
这真的不是你想要做的。请改用find
:
find . -maxdepth 1 -type f | wc -l
此外,您可以使用以下命令排除隐藏文件:
find . -maxdepth 1 -type f ! -name ".*" | wc -l
为完整起见,您可以处理包含换行符和空格的文件,如:
find . -maxdepth 1 -type f -print0 | tr -dc '\0' | wc -c
答案 1 :(得分:0)
要管道到bc
你可以使用类似的东西
echo " $(ls | wc -l) - 1 " | bc
编辑:用史蒂夫的答案或您需要的任何其他命令替换$(
)
中的部分。