我通过文件进行解析,并搜索带有日期的一些单词,例如开始和结束。
对于我来说,我都有正则表达式(例如,日期)或搜索词。
结果应该看起来像... 数据可能看起来像
“开始做某事,等等……于26.06.2019 / 14:47”
具有不同的时间和不同的内容;
“从26.06.2019 / 14:47开始”
#!/bin/bash
### Monitoring v0.1
filename=/home/csd/test/lmstat_lmi1_fox.txt
searchpattern='Start'
search='^[0-9]{2}\.[0-9]{2}\.[0-9]{2}([0-9]{2})?[[:space:]]*/[[:space:]]*[0-9]{2}:[0-9]{2}$'
output=''
input=''
result=''
line=0
function readline
{
file=$filename
while IFS= read -r LINE
do
input=$LINE
## p="${LINE}\n";
## echo -e "${p}"
searchpattern { args : string $input, string $searchpattern}
done < $file
}
function searchpattern
{
input=$1
searchpattern=$2
echo `expr "$input" : "$searchpattern"`
echo `expr "$input" : "$search"`
}
目前返回0 ...我该如何重写呢?
预先感谢
样本输入看起来像这样...
"Testfile...
Start AUFBAU BUSHDAT : 25.06.19 / 16:30
Ende AUFBAU BUSHDAT : 25.06.19 / 16:31
...
...
Start AUFBAU BUSHIDODAT : 25.06.19 / 17:20
Ende AUFBAU BUSHIDODAT : 25.06.19 / 18:42
....
...."
更新
具有一些传递参数错误,但尚未解决...
现在具有以下代码
function readline
{
file=$filename
while IFS= read -r LINE
do
input=$LINE
search=$search
searchpattern "$input" "$search"
done < $file
}
function searchpattern
{
input=$1
search=$2
echo $(echo "$input" | grep -o -P "$search")
}
但是我没有结果