我有一个包含以下内容的示例文件:
line 1
line 2
line 3
line 4
line 5
line 6
line 7
bash
我需要做的是:
因此,在我的示例中( numberoflines = 3),该文件变为:
line 4
line 5
line 6
line 7
line 1
line 2
line 3
我需要使用 numberoflines 变量获得第2点和第3点的代码。
答案 0 :(得分:1)
你"需要"使用数组?这似乎是一个功课问题。 "继续并删除它"听起来更像那样。如果不是,这是一种没有数组的方法。
#!/bin/bash
lines=3
file=/path/to/file
{ sed "1,${lines}d" < "$file"; head -n "$lines" "$file"; }
删除第一行&#34;&#34;首先是行,然后第二行打印第一行&#34;行&#34;线。
如果这是作业:)你真的需要使用数组,你只需要弄清楚数组中有多少元素,打印来自&#34;行+ 1&#34;到最后,然后从0打印到&#34;行&#34;。或者只是逐行阅读文件,存储行直到你到达$ lines。在您存储$ line行之后,切换到打印而不是存储。然后打印出阵列。如果我是真的这样做,那第二种方式是我做的。