【发布时间】:2010-05-06 14:53:48
【问题描述】:
我正在使用以下内容在 shell 脚本中生成随机密码:
DBPASS=</dev/urandom tr -dc A-Za-z0-9| (head -c $1 > /dev/null 2>&1 || head -c 8)
当我像这样在一个文件中运行它时:
#!/bin/sh
DBPASS=</dev/urandom tr -dc A-Za-z0-9| (head -c $1 > /dev/null 2>&1 || head -c 8)
echo $DBPASS
回显密码。当我将它合并到一个更大的脚本中时,尽管由于某种原因似乎从未创建变量,
所以例如这不起作用(旧密码字符串被替换为空):
DBPASS=</dev/urandom tr -dc A-Za-z0-9| (head -c $1 > /dev/null 2>&1 || head -c 8)
sed -i s/oldpass/$DBPASS/ mysql_connect.php
如果我手动设置变量,尽管一切都很好。我必须承认我不完全确定密码是如何生成的。如果有助于澄清问题可能是什么,此脚本包含在 postwwwact cPanel 脚本中
谁能看出问题出在哪里?
【问题讨论】:
-
你可能只想看看apg