我想从已知文件中读取值。
文件位于/root/.my.cnf 并包含
[client]
password='PosftGlK2y'
我想返回 PosftGlK2y - 理想情况下使用简单的一个班轮命令。
我试过了
cat /root/.my.cnf | grep password
返回密码='PosftGlK2y'
我相信有更好的方法。
答案 0 :(得分:2)
您可以直接跳过cat
和grep
,然后使用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
标志指定的列。