を使用する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

を使用します。

など

コメント

回答

前述のとおり別の質問で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コマンドの場所をすでにキャッシュしている可能性があることに注意してください。シェルセッション。次に、zshrehashを使用して、そのキャッシュをクリアするか、新しいターミナルを開くことができます。

システムの場合GNU sedではないネイティブのsed実装を提供する場合は、GNU sed as gsedは、ネイティブのsedに固有の動作に依存する既存のスクリプトを壊さないようにします。これが、macOSでのHomebrewのデフォルトの動作がGNU sedgsedとしてインストールする理由です。これは、他の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

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です