Linux 中常规命令的快捷方式,不使用别名

Linux 中常规命令的快捷方式,不使用别名

我对 Linux 还只是个新手。

我经常需要在终端上的大量文件列表中 grep 特定文本。我使用grep -i "<text>" *.txt

要求是一旦我应用快捷键,光标就会停留在两者之间""。我使用一个简单的 python 脚本在 securecrt 上运行此快捷方式。最近我转到 Tabby,它没有运行脚本的选项。那么我如何在终端内执行此操作。(我没有 Ubuntu 的管理员权限)

答案1

Bash 函数

在这种情况下最灵活的方法是创建一个小型的 bash 函数:

mygrep () {
   grep -i "$@" *.txt
}

并将其包含在您的~/.bashrc文件中,以便您每次打开终端时都可以使用它。然后,mygrep(您可以将其更改为任何您喜欢的)将是一个可用的命令,并且可以这样调用:

mygrep "Text to search"

别名

只有当命令可以以变量参数作为最后一个参数时,才可以使用别名。使用grep,可以做到这一点:

alias mygrep='grep *.txt -i -e'

答案2

将此命令写入您的终端:

alias gp='read gpvar && grep -i "$gpvar" *.txt'

然后您只需运行gp,终端就会要求您输入要搜索的文本并提供 grep 输出。

你也可以将这行代码包含到你的 .bashrc 中,这样就不需要在每次连接到服务器时运行它

相关内容