[解決済み】Mac(BSD)とLinuxの両方で動作するsedのin-placeフラグ
2022-04-01 09:24:28
質問
の呼び出しはありますか?
sed
LinuxとMacの両方で動作する、バックアップなしのインプレース編集を行うには?BSDの
sed
OS Xに同梱されている
sed -i '' …
は、GNUの
sed
Linuxディストリビューションは通常、引用符を空の入力ファイル名として解釈し(バックアップ拡張子の代わりに)、必要なのは
sed -i …
の代わりに
両方のシステムで同じスクリプトを使用できるように、両方のフレーバーで動作するコマンドライン構文はありますか?
解決方法は?
もし、本当に
sed -i
簡単な'方法、以下はGNUとBSD/Macの両方で動作します。
sed
:
sed -i.bak 's/foo/bar/' filename
スペースとドットがないことに注意してください。
証明する。
# GNU sed
% sed --version | head -1
GNU sed version 4.2.1
% echo 'foo' > file
% sed -i.bak 's/foo/bar/' ./file
% ls
file file.bak
% cat ./file
bar
# BSD sed
% sed --version 2>&1 | head -1
sed: illegal option -- -
% echo 'foo' > file
% sed -i.bak 's/foo/bar/' ./file
% ls
file file.bak
% cat ./file
bar
もちろん、この場合は
.bak
ファイルを作成します。
関連
-
[解決済み】Bashのexportコマンド
-
[解決済み】スラッシュとrsyncコマンド
-
[解決済み] sudo mv home/* *」というコマンドは何をするのですか?[クローズド]
-
[解決済み] あるパターンの前にテキストを追加する際に、大文字小文字を無視してsedを使用する
-
[解決済み] CLIから、ファイルの最終行を表示する
-
[解決済み] LinuxでXcodeを動かせるか?
-
[解決済み] sudoとnohupを連動させる
-
[解決済み] bashの「#$」はどういう意味ですか?
-
[解決済み] CMakeエラーです。このプロジェクトでは次の変数が使用されていますが、NOTFOUND に設定されています。
-
[解決済み] Macで-iオプション付きのsedコマンドは失敗するが、Linuxでは動作する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】CentOSのエラー - sudo: effective uid is not 0, is sudo installed setuid root?
-
[解決済み] usr/bin/env bash」と「#!/usr/bin/bash」の違いは何ですか?
-
[解決済み] "grep -q" のポイントは?
-
[解決済み] glibc: elfファイルのOS ABIが無効です。
-
[解決済み] GNUアセンブラを使ってx86_64でprintfを呼び出す
-
[解決済み] Bashスクリプトでスクリプトファイル名を知るには?
-
[解決済み] OS X で 'find' コマンドを使用して 'sed' を使用するとエラーが発生する。"無効なコマンドコードです。"
-
[解決済み] sudo mv home/* *」というコマンドは何をするのですか?[クローズド]
-
[解決済み] sudo: must be setuid root" というメッセージが出るが、sudo は既に root が所有している [closed] 。
-
[解決済み] grepコマンドで特定の列にマッチングさせる