我怎样才能从文件中找到更近的字?
E.g
04-02-2010 Workingday
05-02-2010 Workingday
06-02-2010 Workingday
07-02-2010 Holiday
08-02-2010 Workingday
09-02-2010 Workingday
我将上述数据存储在'feb2010'文件中,
通过这个表示我将日期存储在一个变量日期=日期'+%d-%m-%Y'
如果日期是06-02-2010,我想grep“06-02-2010 Workingday”
并希望将字符串Working day存储在变量
中答案 0 :(得分:1)
daytype=`grep $date feb2010 | cut -c13-`
grep
输出该行,然后cut
会切断该行第13个字符前的所有内容。 (另一种可能性是cut -f3 -d' '
,它在第二个空格之后输出字段。)结果存储在变量daytype
中。
这假设日期只在文件中出现一次。
答案 1 :(得分:1)
#! /bin/bash
grep `date '+%d-%m-%Y'` feb2010 |
while read date type; do
echo $type
done
答案 2 :(得分:1)
使用bash shell
#!/bin/bash
mydate=$(date '+%d-%m-%Y')
while read -r d day
do
case "$d" in
"$mydate"*) echo $day;;
esac
done < feb2010
答案 3 :(得分:0)
type=($(grep $date feb2010)) # make an array
type=${type[1]} # only keep the second element