当您的历史记录充满长命令时,我正在寻找一种用 Fish 搜索历史记录的解决方案。例如,我经常在我的历史记录中使用包含 json 有效负载的curl命令,并且它们足够长,以至于它们不适合放在一行中,这使得很难一眼区分它们。我当前的解决方案是输入更多我想要的内容,但这很烦人。
有没有办法让历史条目在执行时显示,而不将它们减少到一行?有没有我不想要求的更聪明的解决方案?
我在 Ubuntu 上进入了一个有趣的状态。下面的步骤对其进行了最好的描述。
用一根管道,我看到了我所期望的
# In shell A
tail -f foo.log | grep aaa
# In shell B
echo aaa >> foo.log
# Shell A prints out `aaa`
但是有多个管道我什么也看不到
# In shell A
tail -f foo.log | grep aaa | grep bbb
# In shell B
echo aaa bbb >> foo.log
# Nothing ever prints in shell A
但如果我只是回声,它就可以正常工作。
echo 'aaa bbb' | grep aaa | grep bbb
这是我创建最小复制的尝试——我最初遇到的问题是尝试从 adb logcat(Android 开发工具)发送日志。我也尝试过 zsh、bash 和 fish。
我认为它与我的 inotify 观察者限制有关,但碰撞它并没有改变任何东西。