linux - shell 脚本中未捕获输出

标签 linux bash shell

我试图捕获变量中的输出,但我无法这样做。我尝试了以下场景:

verify=$(su - omc -c "ldapsearch -x -n -D "uid=rac3gp,ou=people,ou=accounts,dc=netact,dc=net" -w hee_120" 2> /dev/null)

当我执行 echo $verify 时,它显示空白输出

su - omc -c "ldapsearch -x -n -D "uid=rac3gp,ou=people,ou=accounts,dc=netact,dc=net" -w hee_120" >>dd.txt

输出也不会在另一个文件中捕获。预期输出是

ldap_bind: Invalid credentials (49)

执行成功后应该显示。

最佳答案

这对我来说听起来像是一个错误。

ldap_bind: Invalid credentials (49)

那么这可以被打印到 stderr 吗?如果您在第一次尝试将 2>/dev/null 更改为 2>&1 并将其存储在变量中,那么应该可以工作。

关于linux - shell 脚本中未捕获输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30662239/

相关文章:

linux - 从shell脚本中的字符串中删除单引号

Shell 脚本变量替换字符

linux - 将用户名和其他参数通过管道传递给命令行实用程序

linux - libc 函数位置在 fork 进程之间发生变化?

c++ - 如何从源代码安装 boost 获得与从存储库安装 boost 相同的结果?

linux - 使用 bash 使用 'while read' 遍历列表

bash - 创建一个 shell 脚本来检查网络连接

linux - 从 root 运行一个脚本,它调用 sudo oracle 中的另一个脚本。如何在不询问 oracle 密码的情况下做到这一点

linux - 如何通过nohup获取程序启动时的pid?

python - python 错误退出后未执行 Bash 陷阱