を使用するmacOSでコマンドが見つかりません。zshを使用しています。正規表現の\ sなど、ubuntuで実行できるコマンドを使用できません。 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
すべてのgnuコマンドを使用できるようにするにはどうすればよいですか。 Macで面倒なことはありませんか?また、デフォルトの代わりにgnuコマンドを使用する必要があるコマンドのリストを教えてください。たとえば、sed
を使用します。
など
コメント
- 関連: stackoverflow.com/questions/30003570 / …
回答
前述のとおり別の質問でGNU sed
を--with-default-names
でHomebrewを使用してインストールする場合、次に/usr/local/bin/sed
としてインストールされます。
--with-default-names
がない場合、。
sed
としてインストールされている場合は、$PATH
によって異なりますiv id sed
を実行すると、= “04c9b6874d”>
バイナリが取得されます。 $PATH
が説明どおりの場合、GNU sed
はネイティブmacOS sed
。
以前に同じコマンドラインでコマンドを使用したことがある場合は、シェルがsed
コマンドの場所をすでにキャッシュしている可能性があることに注意してください。シェルセッション。次に、zsh
のrehash
を使用して、そのキャッシュをクリアするか、新しいターミナルを開くことができます。
システムの場合GNU sed
ではないネイティブのsed
実装を提供する場合は、GNU sed
as gsed
は、ネイティブのsed
に固有の動作に依存する既存のスクリプトを壊さないようにします。これが、macOSでのHomebrewのデフォルトの動作がGNU sed
をgsed
としてインストールする理由です。これは、他のBSDシステムでGNU sed
(および一般的なGNUツール)に名前を付けるデフォルトの方法でもあります。
コメント
- 私はそれを解決しました。どうやらそれは
usr/local/Cellar/gnu-sed/4.4/bin
にインストールされました。パスに追加しました。それでも、実際のsedの動作を変更する代わりに、gsedを使用したかったのです。 - @IshanSrivastava I '自作ユーザーではありませんが、' without
--with-default-names
をインストールすると、GNUSedをgsed
として使用できますか? - デフォルトの名前でインストールしました。私はついにあなたを手に入れます。ご迷惑おかけして申し訳ありません。しかし、なぜそれが私のような厄介なパスにインストールされたのですか?
- @IshanSrivastavaここにいくつかの情報: rkulla.blogspot.se/2014/03/the -path-to-homebrew.html