从bash脚本调用历史记录时“历史记录位置超出范围”

亚当

我想创建一个简单的脚本bash_history,根据用户输入的行号从中删除行。

echo -n "Delete History Line Number: "
read num
history -d $num

错误是“历史记录位置超出范围”(不应该这样,我使用的是范围内的数字)。

为什么不起作用?

莱斯曼纳

脚本无法按预期运行的原因有两个:

  1. 正在运行的脚本的bash环境是“非交互式”的,并且未启用历史记录功能。
  2. 正在运行的脚本的bash环境独立于您正在交互工作的环境。

根据您的用例,最简单的解决方案可能是提供脚本而不是执行脚本。有关更多信息,请参见SU帖子,解释了采购与执行之间的区别

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章