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

tree命令-I排除模式与watch结合失效,如何解决?

问题原因

问题出在shell的引号解析顺序:

  • 单独执行tree -L 2 -I '*vfp*'时,当前shell会保留单引号内的*vfp*作为完整的通配符参数传给tree,tree能正确识别这个排除规则。
  • 执行watch tree -L 2 -I '*vfp*'时,外层shell会先剥掉单引号,把*vfp*作为单独参数传给watch。watch默认用sh重新执行命令,此时sh会把*vfp*当作文件名通配符匹配当前目录的内容,而非传给tree作为排除规则,导致-I选项失效。
解决方法

把整个tree命令用单引号包裹,让watch将其作为完整命令字符串交给shell执行,确保通配符规则被tree正确接收:

watch 'tree -L 2 -I "*vfp*"'

执行这个命令后,watch会每次正确调用tree并应用-I '*vfp*'的排除规则,效果和单独执行tree命令一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 05:30:45