Používám oh my zsh. V regulárních výrazech nemohu použít některé příkazy, které bych mohl udělat na ubuntu, např. Nainstaloval jsem home-brew a poté brew install gnu-sed --default-names, ale přesto nemohu použít příkaz sed. Moje proměnná $ PATH je trochu pokazená a nejsem si jistý, jak ji opravit.

/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 

Co mám dělat, abych mohl použít všechny příkazy gnu bez potíží na mém počítači Mac? Dejte mi prosím také seznam příkazů, u kterých musím použít příkaz gnu místo výchozího, např. gsed místo sed atd.

Komentáře

Odpověď

Jak bylo uvedeno v jiné otázce , pokud instalujete GNU sed pomocí Homebrew s --with-default-names , poté se nainstaluje jako /usr/local/bin/sed.

Bez --with-default-names se nainstaluje jako /usr/local/bin/gsed.

Pokud je nainstalován jako sed, pak záleží na vašem $PATH co sed binární soubor se vyzvedne při spuštění sed. Pokud je váš $PATH takový, jaký jste popsali, měl by mít GNU sed přednost před nativním macOS sed.

Všimněte si, že prostředí mohlo mít mezipaměť umístění příkazu sed, pokud jste již dříve použili příkaz na příkazovém řádku ve stejném relace prostředí. Potom můžete použít rehash v zsh k vymazání mezipaměti nebo k otevření nového terminálu.

Když systém poskytuje nativní sed implementaci, která není GNU sed, pak je často lepší nainstalovat GNU sed as gsed nerozbít existující skripty spoléhající se na chování specifické pro nativní sed. Proto je výchozím chováním Homebrew v systému macOS instalace GNU sed jako gsed. Toto je také výchozí způsob pojmenování GNU sed (a nástrojů GNU obecně) na jiných systémech BSD.

Komentáře

  • vyřešil jsem to. Zřejmě byl nainstalován v usr/local/Cellar/gnu-sed/4.4/bin. Přidal jsem k cestě. Přesto bych chtěl použít gsed místo toho, abych změnil to, co můj skutečný sed.
  • @IshanSrivastava I ' m žádný uživatel Homebrew, ale nechtěl ' Instalace bez --with-default-names vám umožní používat GNU Sed jako gsed?
  • Nainstaloval jsem jej s výchozími názvy. konečně tě dostanu. omlouvám se za potíže. ale proč se to nainstalovalo na tak nepříjemnou cestu, jako je ta moje?
  • @IshanSrivastava Nějaké informace zde: rkulla.blogspot.se/2014/03/the -path-to-homebrew.html

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *