linux中使用脚本让两个文件的拼接
file1:人名到达时间逗留时间A10316140520B10316150110file2:人名离开时间A103161440A203161530...
file1:
人名 到达时间 逗留时间
A1 03161405 20
B1 03161501 10
file2:
人名 离开时间
A1 03161440
A2 03161530 展开
人名 到达时间 逗留时间
A1 03161405 20
B1 03161501 10
file2:
人名 离开时间
A1 03161440
A2 03161530 展开
展开全部
给个思路给你吧。大循环套小循环,大概如下面,顺手胡写,完全没有测试。
#!/bin
aaa=""
bbb=""
ccc=""
cat file1 | while read line
do
{
aaa= `echo $line | cut -f1`
cat file2 | while read myline
do
{
bbb= `echo $myline | cut -f1`
ccc= `echo $myline | cut -f2`
if [ "$aaa == "$bbb]
then
echo "$line" "$ccc" >> newfile
fi
}
done
}
done
#!/bin
aaa=""
bbb=""
ccc=""
cat file1 | while read line
do
{
aaa= `echo $line | cut -f1`
cat file2 | while read myline
do
{
bbb= `echo $myline | cut -f1`
ccc= `echo $myline | cut -f2`
if [ "$aaa == "$bbb]
then
echo "$line" "$ccc" >> newfile
fi
}
done
}
done
追问
aaa= `echo $line | cut -f1`这个语句不对吧。。。他是先执行echo $line后在进行cut -f1吧
展开全部
循环读取其中一个文件然后重定向到另一个文件例如下面的:
for i in `cat file2`;do
echo $i >>file1
done
for i in `cat file2`;do
echo $i >>file1
done
追问
用>>的话只能把搜索到的内容附加到最后,并不是连续的,我需要看到的是(人名,到达时间按,离开时间)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
join命令
更多追问追答
追问
我刚试过,我只想把A1的提取出来,但是join的话,不连续,还请高手指导
追答
什么意思?提取A1的到达时间 逗留时间和离开时间 然后放在一个新文件里?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询