如何为表达式的一部分加上别名以进行查找?

迷宫

我更喜欢正则表达式,而-regex不是的shell模式语法-name我也想使用该posix-egrep类型,所以我想做些类似的事情

alias find="find -regextype posix-egrep"

但这是一个错误,因为路径必须在表达式之前。但是,-regextype必须在表达式中位于第一个位置(或在使用-regex之前-iregex)。

我只想使用别名或具有shell函数,find以便它与通常一样工作,posix-regex只要我决定使用-regexor-iregex选项就可以使用

我怎样才能做到这一点?

h3rrmiller

因为find参数是位置函数,所以函数将是更好的解决方案。

find(){
  command find "$1" -regextype posix-egrep "${@:2}"
}

由于您要“覆盖”原始命令,find因此需要使用的完整路径,以便新函数不会创建调用自身的无限循环。

通过使用函数而不是别名,我们可以使用位置参数变量($1-$n)。由于您可能还想在其末尾添加其他内容,因此find我们附加了${@:2}使用数组切片的命令,命令将除了第一个参数(您的路径)之外的所有内容附加在后面。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

什么是正则表达式来查找JSON的一部分

如何在 bash shell 中使用查找结果作为正则表达式的一部分

VSCode查找和替换-查找实例,其中搜索表达式的一部分与条件匹配,而一部分与条件不匹配

如何捕获String表达式并仅替换其中一部分?

如何使用正则表达式跳过String的一部分?

如何使用正则表达式删除文本的这一部分?

如何仅替换以下正则表达式(JavaScript)的一部分?

如何使用grep排除正则表达式的一部分

如何使正则表达式的一部分可选?

如何在正则表达式中否定类的一部分?

如何使用 C 中的宏计算表达式的一部分?

正则表达式匹配行的一部分,对行的其余部分进行负查找(不匹配单词)

评估Lambda表达式作为表达式树的一部分

如何仅对网址的最后一部分进行正则表达式?

正则表达式查找单词,但如果它是较大短语的一部分,则不查找

用正则表达式查找字符串的一部分

查找正则表达式的哪一部分导致匹配

正则表达式查找字符串的一部分和相关值

需要正则表达式来查找输入名称javascript的最后一部分

PHP查找并用正则表达式替换字符串的一部分

kate-正则表达式-查找并将URL的一部分从href替换为“>

正则表达式查找电子邮件地址的最后一部分

裁剪出一部分字符串并使用正则表达式进行打印

如何用相应方程式的左侧部分替换表达式的一部分?

您如何选择不替换作为在正则表达式中查找的一部分的字符串?

如何将字符串的一部分与某些特定字符进行正则表达式

如何使用正则表达式从 URL 中获取最后一部分?

如何使用正则表达式在Java中处理字符串的一部分

如何使用正则表达式移动字符串的一部分