我在用
a=`head -1 Rt.in`
从我的文件中获取第一个值并将其保存为变量,然后我使用相同的变量来tail -$a
尾随输入的最后一行。但它给出了一个错误:
tail: illegal option -- -53\r.
我的输入文件从第三行开始有 4 列。
这是我正在使用的脚本的一部分:
a=`head -1 Rt.in`
echo $a
tail -$a Rt.in
我得到的输出错误是这样的:
tail: illegal option -- -53\r
输入文件部分如下:
53
FEPXUU
H 9.155963 1.289174 11.531518
H 9.004353 2.726286 11.683448
N 11.762550 3.890769 11.785241
N 10.610393 3.635048 9.544268
N 10.745642 1.175050 9.076323
N 13.210069 2.309946 9.848128
N 12.319480 0.955257 11.800435
C 12.359945 3.942548 12.929277
C 11.267322 5.027779 11.274755
H 9.052185 4.031311 6.865735
C 10.031631 3.303244 8.416945
C 10.093512 1.894663 8.164740
C 9.546565 1.312421 7.090592
.
.
.
这样的线路有53条。
谁能告诉我为什么会出现此错误以及如何删除它?
如果我直接在终端中使用管道运行上面的脚本,我会收到错误,tail: -: No such file or directory
然后列出几个原子。
答案1
行数不应该是它应该是的参数:
tail -n $a Rt.in
现在您将获得文件第一行中定义的最后一行的数量。这-n
也应该与您的命令一起使用head
。