我有以下 Ruby 脚本,foo
正在用它观看fswatch
:
#!/usr/bin/env ruby
puts "hello world!"
在命令行上,输出如下所示:
➜ ~/w/s/g/m/todo master ✗ fswatch bin/* | xargs -I {} bundle exec {}
hello world!
^C
这看起来一切都很好,正如预期的那样,我想知道,我如何告诉fswatch
在运行之前清除屏幕bundle exec
?或者编写某种 bash 脚本来实现相同的目标,或者查看我的文件并运行我的命令,但事先清除屏幕?
答案1
最近我自己必须弄清楚这一点。尝试:
fswatch bin/* | xargs -I {} sh -c 'clear && bundle exec {}'
编辑:完全清除回滚缓冲区将取决于实际使用的终端仿真程序。例如,macOS
您可以执行以下操作之一:
- 终端:菜单命令是
Edit > Clear to Start
或⌘K,所以你可以在 applescript 中自动化并调用代替clear
- iTerm:支持方便专有转义码- 只需替换
clear
为printf "\033]1337;ClearScrollback\007"