我有一個包含用戶串列的檔案,我找到了一種方法如何為每個用戶生成隨機密碼,但不知道如何為每個用戶選擇他們的用戶名和密碼并通過電子郵件發送給他們(電子郵件示例[email protected])腳本發送每個使用檔案中的每個密碼使用一封電子郵件,也就是說,如果有 5 個用戶,那么他們每個人將收到 5 封電子郵件和 5 個不同的密碼。
生成密碼
#!/bin/bash
file=$(cat /tmp/user_names.txt)
for line in $file
do
passrand=$(openssl rand -base64 12)
echo -e "$line" "$passrand"
done
發送電子郵件
#!/bin/bash
for maillogin in $(cut -f1 -d ' ' /tmp/u_p.txt) || pass=$(cut -f2 -d' ' /tmp/u_p.txt)
do
for pass in $(cut -f2 -d' ' /tmp/u_p.txt)
do
echo "Hello your login is" $maillogin "and password is" $pass | mail -s "Test Mail" "${maillogin}@example.com"
done
done
uj5u.com熱心網友回復:
你的第一個腳本沒問題。
第二,你需要逐行閱讀。因此,不要使用嵌套回圈來讀取登錄名和密碼。使用read命令并分解行:
#!/bin/bash
UP_FILE="/tmp/u_p.txt"
while read -r
do
# maillogin <- line without any characters *after first* space (space included)
maillogin="${REPLY%% *}"
# pass <- line without any characters *before first* space (space included)
pass="${REPLY#* }"
echo "Hello your login is $maillogin and password is $pass" | mail -s "Test Mail" "${maillogin}@example.com"
done < "${UP_FILE}"
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/535534.html
標籤:狂欢文件验证电子邮件密码
上一篇:我的登錄代碼列印我使用的文本檔案中的每一行,而不是只列印一個輸出來表示成功或不成功的登錄
下一篇:狀態渲染問題,這是正確的模式嗎?
