我试图在我的机器上找到一个特定的设备。所以我输入了 lspci。这给了我一个很长的项目列表。太大了,无法不断查看我的设备是否仍然连接着。所以我运行了:
lspci | grep nvidia
这没有返回任何结果。所以我尝试了“Nvidia”,但什么也没得到,最后我尝试了“NVIDIA”,这时我得到了结果。
Grep 似乎是一款很棒的工具,但它有一些明显的局限性。是否可以编写自己的搜索类型函数来完成此任务并在字符串中包含所有情况?
如果是这样,有人能给我指出正确的方向,教我如何做到这一点吗?即使是一些关于这个主题的文献,我也读得懂。
即使需要一个月的时间,我也愿意学习如何开发具有该功能的工具。
谢谢。
答案1
man grep
将为您提供有关如何使用 grep 的信息。该-i
选项将执行您想要的操作:忽略大小写。因此,命令
lspci | grep -i nvidia
将会检索到 NVIDIA。
如果你想制作自己的工具,一个简单的方法是定义一个别名:
alias 'grep=grep -i'
此自定义命令将在您每次运行时grep
暗示该选项。定义别名后,您的原始命令将按您想要的方式工作。无需进一步编写您自己的工具。-i
grep
此别名定义仅对当前会话有效。要永久启用该选项,请~/.bashrc
使用文本编辑器打开文件并在已有的定义-i
中添加该选项:alias
alias grep='grep -i --color=auto'