ฉันกำลังเขียนเชลล์สคริปต์เพื่อแทนที่ชื่อในฐานข้อมูล ด้วยเหตุนี้ ฉันมีรายชื่อผู้ใช้ชื่อปัจจุบันและชื่อใหม่ในไฟล์ .txt รูปแบบไฟล์จะเป็นดังนี้
**new name current name**
abc pqr
def stq
mnd tdh
สำหรับสิ่งนี้ ฉันกำลังเขียน "for loop" โดยใช้คำสั่ง awk
โดยที่ฉันต้องการมันควรให้ค่า $1
เช่น abc
,def
,mnd
เป็นต้น
ฉันได้เขียนเพื่อวนซ้ำเหมือนด้านล่าง
function ()
{
cd $directory
for i `cat $filename.txt` | awk '{print $1}'
do
j=`grep "$i `cat $filename.txt ` | awk '{print $1'} |awk '{print $2}'"`
echo "update table SET username = '$i' WHERE username = '$j;"
done
}
แต่อย่างใดสิ่งนี้ไม่ได้ผล ใครสามารถช่วยเขียนโค้ดในเชลล์สคริปต์ได้บ้าง