我要做sdv计算。
我有很多文件。每个文件有2000行。我只需要每个文件的最后一行(第2000行),我想将每个文件复制到一个文件中。
例如,
last line of first file will be the first line of new file
last line of second file will be the second line of new file.
.......
......
last line of nth file will be nth line of the new file.
我在想这样的事情:
case=$1 # total numer of files
for (( i = 1; i <= $case ; i ++ ))
do
file=PPD$i # files are numbered as PPD1, PPD2.....PPDi
some command.....>final.dat
done
答案 0 :(得分:3)
而不是
some command.....>final.dat
你可以说:
sed '2000!d' $file >> final.dat
如果文件没有2000行,请注意sed
命令不会产生任何输出。
答案 1 :(得分:1)
如果您一直在寻找最后一行,请使用以下内容:
some command | tail -n 1 > final.dat
如果你已经存档了所有文件并且在末尾包含换行符,那么你可以通过这样做更容易
tail -n 2 -q /path/to/files/* > final.dat
在这种情况下,-n 2可以在输出中获取换行符