小编Soy*_*oyf的帖子

使用Linux Shell正则表达式匹配文件名

我需要一种方法来匹配目录中的文件名.

例如,我有三个文件:

CAt_DoG_ZebRa.TXT
MOUSE_lion_deer_BIRD.TXT
fIsh_biRD_LION.TXT
Run Code Online (Sandbox Code Playgroud)

我不是任何正则表达式专家,但我之前在SnapLogic和Pentaho中使用过类似的东西:

(?i).*(?=.*bird)(?=.*lion).*.TXT
Run Code Online (Sandbox Code Playgroud)

上面的内容将匹配包含单词'bird'和'lion'的所有文件名,其中case被忽略,单词的顺序无关紧要.很强大!所以它会匹配这两个:

MOUSE_lion_deer_BIRD.TXT    
fIsh_biRD_LION.TXT
Run Code Online (Sandbox Code Playgroud)

我尝试了上面的很多变化与find和grep一起无济于事.例如:

find . -regex ".*/(?i).*(?=.*bird)(?=.*lion).*.TXT"
Run Code Online (Sandbox Code Playgroud)

以上查找与任何内容都不匹配.

谁能推荐一种方法来做到这一点?

regex linux shell

6
推荐指数
2
解决办法
4412
查看次数

从 Shell 脚本执行 PL SQL 过程

嗨,我正在尝试从我的 Shell 脚本执行 PL SQL 过程并获取返回值(输出值),但它不起作用。谁能建议我做错了什么?这是我所拥有的:

output="$(sqlplus -S user/pw@//ip:1521/db <<ENDOFSQL
set serveroutput on;
DECLARE
    v_return PLS_INTEGER;
BEGIN
    PKG.Procedure(v_return);
    DBMS_OUTPUT.PUT_LINE(v_return);
END;
exit;
ENDOFSQL)"

echo $output 
Run Code Online (Sandbox Code Playgroud)

unix bash shell plsql

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

shell ×2

bash ×1

linux ×1

plsql ×1

regex ×1

unix ×1