linux里面的正则表达式,只包含一个i

问题遇到的现象和发生背景

linux中正则表达式里面,以“h“开头,包含一个”i“这个的话怎么使用grep打印出来,包含一个我用的{1}这个,但是没有结果输出

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

没有看见你完整的表达式。如果不限制i的位置和数量,大致表达式是
"h.*i"

如果有且仅1个i则本身该为
"^h[^i]*i[^i]*$"
一般只有一个不需要量词来限定。
或者写
"^h[^i]*i{1}[^i]*$"
但在sh环境中{}有特殊作用,
需要用 -E 命令行选项 才能正确执行,否则要写成
"^h[^i]*i\{1\}[^i]*$" (因为在sh环境中{}有特殊作用,所以这里需要转义)
才能直接用grep获取到正确结果