回答編集履歴
3
追加
answer
CHANGED
@@ -8,4 +8,15 @@
|
|
8
8
|
```Bash
|
9
9
|
yes "" | head -$M > work
|
10
10
|
cat aaa.txt | sed ${N}rwork
|
11
|
+
```
|
12
|
+
#追加
|
13
|
+
sedでカウンターを設けるのは難しい。
|
14
|
+
```Bash
|
15
|
+
N=4
|
16
|
+
M=4
|
17
|
+
let N1=N+1
|
18
|
+
let M1=M-1
|
19
|
+
( printf "%${M1}s\n" ""
|
20
|
+
cat aaa.txt ) |
|
21
|
+
sed -e 1{ -e h -e d -e } -e ${N1}{ -e :loop -e -e 'a \' -e "" -e x -e "s/ //" -e x -e "t loop" -e }
|
11
22
|
```
|
2
間違い
answer
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
awkでそのまま書くと、
|
2
2
|
```Bash
|
3
|
-
awk NR==$N'{for(i=0;i<'$M';i++)print""}
|
3
|
+
awk '{print}NR=='$N'{for(i=0;i<'$M';i++)print""}'
|
4
4
|
```
|
5
|
+
(訂正:↑処理順序を間違えていたので修正)
|
6
|
+
|
5
7
|
sedでは良い方法がないですね。挿入する物をファイルとして作っておくくらい。
|
6
8
|
```Bash
|
7
9
|
yes "" | head -$M > work
|
1
追加
answer
CHANGED
@@ -1,4 +1,9 @@
|
|
1
1
|
awkでそのまま書くと、
|
2
2
|
```Bash
|
3
3
|
awk NR==$N'{for(i=0;i<'$M';i++)print""}{print}'
|
4
|
+
```
|
5
|
+
sedでは良い方法がないですね。挿入する物をファイルとして作っておくくらい。
|
6
|
+
```Bash
|
7
|
+
yes "" | head -$M > work
|
8
|
+
cat aaa.txt | sed ${N}rwork
|
4
9
|
```
|