替換字段我在一個文件中的以下內容,分爲字段:與值從其他線
$ 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
組成。
如果以下任何答案對您的目標有所幫助,請通過在答案旁邊勾選正確的符號來接受/提出封閉答案。 –