使用bash命令从文件中检索明文密码

时间:2015-06-09 00:24:17

标签: bash shell

我想从已知文件中读取值。

文件位于/root/.my.cnf 并包含

[client]
password='PosftGlK2y'

我想返回 PosftGlK2y - 理想情况下使用简单的一个班轮命令。

我试过了

cat /root/.my.cnf | grep password

返回密码='PosftGlK2y'

我相信有更好的方法。

2 个答案:

答案 0 :(得分:2)

您可以直接跳过catgrep,然后使用awk分隔符直接转到'

grep password /root/.my.cnf | awk -F"'" '{print $2}'

或者,您可以完全跳过grep并使用awk进行搜索和提取。

awk -F"'" '/^password=/{print $2}' /root/.my.cnf

答案 1 :(得分:1)

您可以使用cut拆分'字符上的行:

grep password= /root/.my.cnf | cut -d "'" -f 2

返回

PosftGlK2y

cut命令在分隔符(-d标志)上拆分一行,并返回f标志指定的列。