替换字段我在一个文件中的以下内容,分为字段:与值从其他线
$ cat list
ldap 12309423409875
account01 98734598073
notes 4736594384325
我想通过采取从对应于第一用户输入来改变所述第二字段的值字段,使用awk。例如,我要求用户输入字段;如果他输入ldap
,那么我应该能够给第一行的第二个字段赋予不同的值。
我尝试了下面的脚本,但它没有工作:
generatepasswd()
{
date | md5sum
return
}
cat list
echo "for what do you want to change the password"
pass=`generatepasswd`
read op
awk '$1=="$op"{$2=$pass}1' list > tmp && mv tmp list
我得到的输出,如果我使用的字符串,而不是直接$op
;例如,如果我使用ldap
,我会得到结果,但如果我使用$op
,则不会得到输出结果。 op
由字符串ldap
组成。
如果以下任何答案对您的目标有所帮助,请通过在答案旁边勾选正确的符号来接受/提出封闭答案。 –