当我尝试使用循环连接多个文件时,它会将后续文件的第一行与前一个文件的最后一行连接起来。 例如,我有以下两个文件:
from scrapy import Spider
from scrapy.selector import Selector
from parser_xxx.items import XxxItem
class XxxSpider(Spider):
name = "xxx"
allowed_domains = ["xxx.xxx.com"]
start_urls = ["http://xxx.xxx.com/jobs/"]
def parse(self, response):
quelist = Selector(response).xpath('//div[@id="job_listings"]')
for que in quelist:
item = XxxItem()
item['title'] = que.xpath('//a//h4/text()').extract()
item['link'] = que.xpath('//a/@href').extract()
yield item
我使用以下脚本
File1 File2
1.234 12.11
2.345 0.00
11.567 4.56
7.890 2.34
以下是for i in File1 File2
do
cat $i &
done >> tmp.txt
的样子
tmp.txt
这只是一个例子,它可以通过使用" Enter"来解决。密钥,但我有大约100个这些文件,每个文件有近50行。
答案 0 :(得分:3)
这里不需要循环。您可以一次性直接连接文件:
cat File1 File2 >> tmp.txt
答案 1 :(得分:0)
下面的脚本将循环显示当前 public View getViewByPosition(int pos, ListView listView) {
final int firstListItemPosition = listView.getFirstVisiblePosition();
final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;
if (pos < firstListItemPosition || pos > lastListItemPosition ) {
return listView.getAdapter().getView(pos, null, listView);
} else {
final int childIndex = pos - firstListItemPosition;
return listView.getChildAt(childIndex);
}
}
//check above function return the view and now call the function
View v = getViewByPosition(position, list);
LinearLayout vwParentRow1 = (LinearLayout) v;
TextView btnChild1 = (TextView) vwParentRow1.getChildAt(0);
String firstcolumn = btnChild1.getText().toString();
上的所有.txt
个文件,并将它们连接到dir
temp.out
注意:强>
我已经使用您提供的示例对脚本进行了测试,并且按预期工作。
#!/bin/bash
FILES=./*.txt
for f in $FILES
do
cat $f >> temp.out
done
答案 2 :(得分:0)
正如其他人已经建立的那样,你的问题是由行结尾引起的。我建议通过awk运行你的文件来规范它们:
awk '{ sub(/\r$/, ""); print }' File1 File2 > tmp.txt
这将从每条记录的末尾(如果存在)中删除回车符(\r
,Windows样式行结尾的一部分)。 print
将输出记录分隔符(ORS
,Linux上的换行符\n
)附加到每一行。
请注意,这里绝对不需要循环。多个文件可以作为参数传递给awk(或者cat就此而言,实际上这就是cat的重点)。
测试它,使用一些带有Windows样式行结尾的文件,并且每个文件的末尾都没有换行符:
$ cat file1 file2
1.234
2.345
11.567
7.89012.11
0.00
4.56
$ awk '{ sub(/\r$/, ""); print }' file1 file2
1.234
2.345
11.567
7.890
12.11
0.00
4.56
2.34