![使用手表时获取更新的输出](https://linux22.com/image/194593/%E4%BD%BF%E7%94%A8%E6%89%8B%E8%A1%A8%E6%97%B6%E8%8E%B7%E5%8F%96%E6%9B%B4%E6%96%B0%E7%9A%84%E8%BE%93%E5%87%BA.png)
答案1
长话短说:你需要在那里使用单引号,如下所示:
watch -n 2 'echo Converted: $(ls *.mp3 | wc -l) of $(ls *.wav | wc -l) files'
解释
双引号告诉 Bash 进行字符串插值前将命令传递给watch
,因此 Bash 会评估这些子 shell,插入输出,然后将整个 shebang 传递给watch
,它不会再次评估它们,因为它不知道它们。
长话短说:你需要在那里使用单引号,如下所示:
watch -n 2 'echo Converted: $(ls *.mp3 | wc -l) of $(ls *.wav | wc -l) files'
解释
双引号告诉 Bash 进行字符串插值前将命令传递给watch
,因此 Bash 会评估这些子 shell,插入输出,然后将整个 shebang 传递给watch
,它不会再次评估它们,因为它不知道它们。