gsed:Homebrewを使用しているmacOSでコマンドが見つかりません。

gsed:Homebrewを使用しているmacOSでコマンドが見つかりません。

私はoh my zshを使用しています。 Ubuntuで実行できるいくつかのコマンドは利用できません。正規表現では \s です。 home-brewをインストールしましたが、brew install gnu-sed --default-namesまだsedコマンドは使用できません。私の$ PATH変数が少し混乱しているので、どのように修正するのかわかりません。

/Users/ishansrivastava/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:/opt/local/sbin:/opt/X11/bin:/Library/TeX/texbin

Macですべてのgnuコマンドを簡単に使用するにはどうすればよいですか?また、基本コマンドの代わりにgnuコマンドを使用する必要があるコマンドのリストを教えてください。待つgsed代わりにsed

答え1

上記のように他の質問にsedHomebrewを使用してGNUをインストールする--with-default-names場合/usr/local/bin/sed

それ以外の場合--with-default-namesはインストールされます/usr/local/bin/gsed

次のようにインストールされている場合は、sed実行時に取得するバイナリによって異なります$PATH。状況が説明と同じ場合、GNUはデフォルトのmacOSよりも優先する必要があります。sedsed$PATHsedsed

sed以前に同じシェルセッションのコマンドラインでこのコマンドを使用した場合、シェルはコマンドの場所をキャッシュした可能性があります。その後、rehashinを使用してキャッシュを消去したり、zsh新しい端末を開くことができます。

システムがsedGNUではなくデフォルトの実装を提供している場合は、通常、デフォルトの動作に依存する既存のスクリプトが破損しないようにsedGNUをインストールすることをお勧めします。これはmacOSでHomebrewのデフォルトの動作はGNUです。sedgsedsedsedgsedsed

関連情報