树负模式不与手表工作

  • 本文关键字:手表 工作 模式 bash
  • 更新时间 :
  • 英文 :


我要watch目录的tree结构。

如果我调用tree -L 2 -I '*vfp*',一切正常,我看不到任何目录

.
0 directories, 0 files

…但如果我尝试watch tree -L 2 -I '*vfp*',我看到的一切都没有-I的影响

Every 2,0s: tree -L 2 -I *vfp*                                                                                                                   
vfp-directory
├── ckpts
├── data
│   ├──  100.wav
│   ├──  101.wav
│   ├──  102.wav
...

我在这里错过了什么?我怎样才能watch目录,并看到与我看到的一样,与一个简单的调用tree?

当你这样做的时候:

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

watch看到的是:

tree -L 2 -I *vfp*

所以你需要做

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

watch看到不同的原因与bash如何解析命令行有关。

bash解析这一行时:

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

它删除了参数周围的引号,所以它运行watch命令,有5个参数:[tree], [-L], [2], [-I], [*vfp*]。

我相信你必须转义你的单引号:

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

最新更新