我想匹配通过使用sed和正则表达式通过管道传递的多个文件扩展名。Sed正则表达式不匹配'要么'或内部组
以下工作:
sed '/.\(rb\)\$/!d'
但是,如果我想允许多个文件扩展名,下面确实没有工作。
sed '/.\(rb\|js\)\$/!d'
sed '/.\(rb|js\)\$/!d'
sed '/.(rb|js)\$/!d'
关于如何做/或内部组的任何想法?
这里是整个代码块:
#!/bin/sh
files=`git diff-index --check --cached $against | # Find all changed files
sed '/.\(rb\|js\)\$/!d' | # Only process .rb and .js files
uniq` # Remove duplicate files
为什么使用'\ $'而不是'$'? –