我有一个随机整数查找返回6个整数。从这6个整数中,我需要在dictionary.txt文件中找到与该整数相关联的每个字符串,然后连接每个找到的单词。
词典:
...
65161 yokel
65162 yolk
65163 yon
65164 yond
65165 yore
65166 york
65211 yost
65212 you
65213 you'd
65214 young
65215 your
65216 youth
...
到目前为止我已经
了curl "http://www.random.org/integers/?num=6&min=11111&max=66631&col=1&base=10&format=plain"
29215
60374
46137
57290
35214
32278
所以我只需要取这6个数字并连接每个找到的相关单词。谢谢!
答案 0 :(得分:1)
words=$( grep -Fwf <( curl ... ) dictionary | grep -oP '(?<=\s)\S+' )
或
words=$( awk 'NR==FNR {num[$1]; next} $1 in num {print $2}' <( curl ... ) dictionary )
然后
echo $words # no quotes
答案 1 :(得分:0)
如果您的dictionary.txt
文件每行一个字,并且如果您提取数字123
,则需要该文件的第123行上的字,您可以这样做:
NUM=$(curl "http://www.random.org/integers/?num=6&min=11111&max=66631&col=1&base=10&format=plain")
WORD=$( sed -n "${NUM}p" dictionary.txt
echo "$NUM $WORD"
如果您的dictionary.txt
文件同时包含每行的数字和单词,则可以执行以下操作:
NUM=$(curl "http://www.random.org/integers/?num=6&min=11111&max=66631&col=1&base=10&format=plain")
WORDLINE=$( sed -n "/${NUM}/p" dictionary.txt
echo "$WORDLINE"
答案 2 :(得分:0)
curl "..." | grep ^"$a" dictionary.txt | awk '{printf $2}'; done