【问题标题】:How to make an alias for grep which include ' character [duplicate]如何为包含'字符的grep创建别名[重复]
【发布时间】:2021-02-22 15:01:05
【问题描述】:

我想为这个命令创建一个别名:

 grep 'world  ' FILE

我希望它显示所有包含 'world' 的行。问题是我无法定义它,因为 ' 字符已用于定义别名。因此,我无法使用以下内容创建命令别名:

 alias name=' grep 'world  ' FILE 

【问题讨论】:

  • easy 答案是alias name=$' grep \'world \' FILE,但更好 的答案是根本不使用别名。别名不允许您进行流量控制;它们使报价变得更加复杂;如果不明确打开默认关闭的功能标志,它们就不能在脚本中使用;不保证在 POSIX 基线 shell 中支持它们;它们不会出现在堆栈跟踪中;它们在各方面都比函数更糟糕。

标签: bash grep alias


【解决方案1】:

与别名相关的所有事情一样:改用函数。

name() { grep 'world  ' FILE "$@"; }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-06
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-02
    • 1970-01-01
    相关资源
    最近更新 更多