You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计单行中用&&分隔的多个ls -l命令输出的总文件数?

问题原因

管道符默认仅作用于其前面紧邻的单个命令,你之前的写法里只有最后一个ls -l *.md的输出进入了统计管道,前两个ls命令的输出直接打印到终端,自然无法得到总文件数。

解决方法

写法1:保留原有多ls命令逻辑

将所有需要统计输出的命令用大括号包裹为一个代码块,合并所有输出后再统一接管道统计:

{ ls -l *.xml && ls -l *.json && ls -l *.md; } 2>/dev/null | egrep -c '^-'

注意语法规则:大括号和内部命令之间需要保留空格,最后一个命令末尾需要加英文分号。2>/dev/null用于过滤某类后缀无匹配文件时ls输出的报错信息,避免干扰统计结果。

写法2:更简洁的简化写法

无需拆分多个ls命令,直接将所有需要匹配的通配符传入同一个ls命令即可,效果完全一致:

ls -l *.xml *.json *.md 2>/dev/null | egrep -c '^-'

内容的提问来源于stack exchange,提问作者RetroCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 20:27:02