我創造了我的基本變量從讀取命令的命令使用一個變量(我已經手工完成這一點,並使用腳本):如何在是創造另一個變量
read NAME
然後我想使用NAME
變量來搜索文件,並創建另一個變量:
STUDENT=$(grep $NAME <students.dat | awk -F: '/$NAME/ {print $1}')
如果我手動運行該命令從students.dat文件(而不是$ NAME)的實際名稱,它執行並顯示我想要的。但是,當我運行此命令(手動或從腳本使用$NAME
),它返回空白,我不知道爲什麼。
與'-v'選項是更安全的傳遞'$ NAME'值。 – chepner
美麗!那樣做了。謝謝! – SuperheroSmith
在傳遞給'grep'的時候,把$ NAME放在雙引號中最好。另外,使用'--'來防止由$ NAME中任何前導'-'造成的失敗。所以,'grep - 「$ NAME」'好得多。 – codeforester