密碼我有運行有readeable密碼作爲參數一些命令bash腳本:慶典桑達:替換字符串
#/bin/bash
batch.sh --user=stefano --option=read-only --password=my_password_very_secret
batch.sh --password=password --user=dummy --option=abc
batch.sh --option=abc --user=dummy2 --password=whatever
batch.sh --user=dummy3 --password=12345
的batch.sh腳本執行一些動作和寫入命令本身就是一個日誌文件,它的輸出。
在此日誌中,我希望密碼值將被「隱藏」(或「*********」)字符串覆蓋。
我發現是下面的一個最快的,但可能不乾淨的解決方案......
Script: batch.sh
#!/bin/bash
echo "This is a log" > /path/to/log/file.txt
echo "[email protected]" | tr ' ' '\n' | sed 's|password=\(.*\)|password=********|' | tr '\n' ' ' >> /path/to/log/file.txt
echo "Completed" >> /path/to/log/file.txt
...但我幾乎可以肯定,這不是最優雅的方式。 我還有什麼不同的寫法?
在日誌文件中的預期輸出創造應該是這樣的
This is a log
batch.sh --user=stefano --option=read-only --password=********
batch.sh --password=******** --user=dummy --option=abc
batch.sh --option=abc --user=dummy2 --password=********
batch.sh --user=dummy3 --password=********
Completed
是的,我可以改變它! –