我创建了一个名为 Blossom 的 shell 脚本,blossom()
因为我女朋友的狗 Blossom 总是在地板上拉屎撒尿。
blossom() {
echo poops and pees on floor all the time
}
因为我是一个好奇的孩子,我想搜索这个 shell 的存储位置并在某个论坛上找到它declare -f
。所以我想在输出中找到它,但也要再次阅读它。
我有一些想法并尝试过
declare -f | grep blossom
好吧,那只显示了顶行blossom() {
所以我想,嗯...让我们尝试一下
declare -f | less
但这仍然太多,无法搜索......
关于什么
declare -f > test_file
nano test_file
好吧,这个确实解决了我想做的一些事情,我可以使用^W“Where at”并发现它没有问题。但这会创建一个文件,但我不想这样做。
如何使用一组特定的命令来预先搜索具有上下滚动功能的输出。也许使用less
命令并进行预先搜索。这可能吗?
答案1
尝试以下方法less
从blossom
已搜索的内容开始:
declare -f | less -p blossom
来自以下文档less
:
-ppattern or --pattern=pattern
The -p option on the command line is equivalent to specifying
+/pattern; that is, it tells less to start at the first occur‐
rence of pattern in the file.
如果您的问题不那么笼统,并且您只需要 function 的源blossom
,请使用以下内容:
declare -f blossom