linux - perl oneliner + 通过 perl oneliner 行从脚本中删除密码

标签 linux perl bash shell ksh

我在 bash 脚本中使用了 perl oneliner,

为了从脚本中删除密码(因为安全问题,当我们想从脚本中删除密码时,这是一个不错的解决方案)

问题是当我运行bash脚本时,perl一行删除了他的行,

后面的单词:export PASSORD=

请告知需要在 perl one liner 行中更新哪些内容才能忽略删除 perl 行中的单词?

备注 - 导出...行不在行的开头

我的脚本中的 perl 一行:

     perl -i -pe 's/(?<=export PASSORD=).*//' /tmp/script.bash

运行脚本之前的脚本

   more /tmp/script.bash

   #!/bin/bash


    export LOGIN=root
    export PASSORD=JH&*(@%VTVTB


    /var/cti/download_password.ksh $PASSORD $LOGIN

       perl -i -pe 's/(?<=export PASSORD=).*//' /tmp/script.bash

运行后的脚本

  more /tmp/script.bash

   #!/bin/bash


    export LOGIN=root
     export PASSORD=


     /var/cti/download_password.ksh $PASSORD $LOGIN

     perl -i -pe 's/(?<=export PASSORD=

最佳答案

您可以通过[ ]匹配空格以避免匹配特定行,

perl -i -pe 's/(?<=export[ ]PASSORD=).*//' /tmp/script.bash

关于linux - perl oneliner + 通过 perl oneliner 行从脚本中删除密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24145542/

相关文章:

perl - 我怎样才能只用连字符连接一些字段?

perl - 从 Yahoo API 获取联系人照片时出现 404 错误

perl - 为什么我的 Perl 程序使用 Tie::File 和 Unicode/UTF-8 编码失败?

linux - 如何在头尾操作的文件中使用管道?

linux - 当我启动 ADB 时,系统完全卡住

linux - 从引导加载程序中获取序列号

bash - 期望脚本不在Docker容器中运行

bash - 如何使用 bash 从文件中删除特定数字

linux - 可以将 Tmux 配置为加载 ~/.bashrc 而不是 ~/.bash_profile 吗?

java - 如何在启动时在 Linux 中使用脚本文件运行 java 类文件?