如何读取以下示例中的值“5”以发出 5 份文件打印?
例如..我的输出类似于下面的代码。
订购:101 嘉宾:拉杰 电话:xxx-xxx-xxxx 5 x 香蕉 5 x 葡萄 5 个苹果
如何读取上述文件中的值 5 并使用如下。如果有办法在变量中获取 5,我可以在 lpr 命令中使用它。
lpr output.txt -#
这会很有帮助。
egrep '[0-9]+' test | cut -f 1 -d " " | uniq
我会做这样的事情:
sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x \([A-Za-z]\+\)/\1 \2/; p }' file |
while read num fruit; do
echo $num $fruit
# do whatever with lpr
done
编辑
如果您想要做的就是找到唯一的 ## ,其中您有一个类似的字符串## x Something
,您可以使用这个:
sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x.*/\1/; p }' file | uniq
如果要将其捕获到变量中,请使用:
var="$(sed -n '/^[0-9]\+ x [A-Za-z]\+/ { s/^\([0-9]\+\) x.*/\1/; p }' file | uniq)"