質問編集履歴
3
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -39,4 +39,11 @@
|
|
39
39
|
|
40
40
|
[追記2]
|
41
41
|
Mac(BSD)のsedのiコマンドで改行をうまく扱えないのはバグのようでした。2005年のバグが2009年時点でも未解決とコメントされていますが、現在でも未解決のようですね。
|
42
|
-
http://www.linuxquestions.org/questions/programming-9/sed-error-command-c-expects-%5C-followed-by-text-under-os-x-but-works-in-linux-730997/
|
42
|
+
http://www.linuxquestions.org/questions/programming-9/sed-error-command-c-expects-%5C-followed-by-text-under-os-x-but-works-in-linux-730997/
|
43
|
+
|
44
|
+
[追記3]
|
45
|
+
多くの皆様に回答していただき、大変感謝です!
|
46
|
+
どの回答も素晴らしく大変勉強になりました。
|
47
|
+
ベストアンサーを選ぶのが苦しかったのですが、shの範囲内でシンプルな書き方のできるedコマンドとsedのsコマンドの回答をベストアンサーにさせていただきました。
|
48
|
+
個人的にはngyukiさんのsedを使わない別解が好きです^^
|
49
|
+
実際の現場ではperlの回答を採用することになりそうですw
|
2
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,4 +35,8 @@
|
|
35
35
|
$ sed -i "" "1iTitle\n\nmessage : hogehoge\n" sample.txt
|
36
36
|
sed: 1: "1iTitle\n\nmessage : ho ...": command i expects \ followed by text
|
37
37
|
```
|
38
|
-
そしたらこんなエラーになってしまい、よくわからなかったので上記の回避策になった次第です。
|
38
|
+
そしたらこんなエラーになってしまい、よくわからなかったので上記の回避策になった次第です。
|
39
|
+
|
40
|
+
[追記2]
|
41
|
+
Mac(BSD)のsedのiコマンドで改行をうまく扱えないのはバグのようでした。2005年のバグが2009年時点でも未解決とコメントされていますが、現在でも未解決のようですね。
|
42
|
+
http://www.linuxquestions.org/questions/programming-9/sed-error-command-c-expects-%5C-followed-by-text-under-os-x-but-works-in-linux-730997/
|
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -26,4 +26,13 @@
|
|
26
26
|
rm -rf add.txt sample.txt.old
|
27
27
|
```
|
28
28
|
|
29
|
-
もっといい方法をご存知の方、どうぞご教授お願いしますm(_ _)m
|
29
|
+
もっといい方法をご存知の方、どうぞご教授お願いしますm(_ _)m
|
30
|
+
|
31
|
+
[追記]
|
32
|
+
最初sedでやろうとしたときはこんな感じでやりました。
|
33
|
+
(MacのsedはBSD系ということで-iの後ろの引数にバックアップファイルの拡張子を入れないといけないのですが、バックアップファイルはいらないので""にしてます。)
|
34
|
+
```
|
35
|
+
$ sed -i "" "1iTitle\n\nmessage : hogehoge\n" sample.txt
|
36
|
+
sed: 1: "1iTitle\n\nmessage : ho ...": command i expects \ followed by text
|
37
|
+
```
|
38
|
+
そしたらこんなエラーになってしまい、よくわからなかったので上記の回避策になった次第です。
|