오 my zsh를 사용하고 있습니다. 예를 들어 정규 표현식에서 \ 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 

모든 gnu 명령을 사용할 수 있도록 어떻게해야합니까? Mac에서 번거 로움없이? 또한 기본값 대신 gnu 명령을 사용해야하는 명령 목록을 알려주십시오. sed

댓글

답변

언급 한대로 다른 질문 (--with-default-names과 함께 Homebrew를 사용하여 GNU sed를 설치하는 경우) 이면 /usr/local/bin/sed로 설치됩니다.

--with-default-names 없이는 .

sed로 설치된 경우 $PATH 무엇에 따라 달라집니다. div id sed를 실행하면 = “04c9b6874d”>

바이너리가 선택됩니다. $PATH가 설명한 것과 같으면 GNU sed가 기본 macOS sed.

이전에 명령 줄에서 명령을 사용한 적이 있다면 쉘이 이미 sed 명령의 위치를 캐시했을 수 있습니다. 쉘 세션. 그런 다음 zshrehash를 사용하여 해당 캐시를 지우거나 새 터미널을 열 수 있습니다.

GNU sed가 아닌 기본 sed 구현을 제공하는 경우 GNU sedgsed로 지정하여 기본 sed에 특정한 동작에 의존하는 기존 스크립트를 중단하지 않습니다. 이것이 macOS에서 Homebrew의 기본 동작이 GNU sedgsed로 설치하는 이유입니다. 이것은 다른 BSD 시스템에서 GNU sed (일반적으로 GNU 도구) 이름을 지정하는 기본 방법이기도합니다.

댓글

  • 해결했습니다. 분명히 usr/local/Cellar/gnu-sed/4.4/bin에 설치되었습니다. 나는 경로에 추가했습니다. 그래도 실제 sed를 변경하는 대신 gsed를 사용하고 싶었습니다.
  • @IshanSrivastava I ' m Homebrew 사용자는 아니지만 ' 없이 --with-default-names 설치하면 GNU Sed를 gsed로 사용할 수 있습니까?
  • 기본 이름으로 설치했습니다. 드디어 잡았다. 문제를 일으켜서 미안 해요. 그런데 왜 저처럼 어색한 경로에 설치 되었습니까?
  • @IshanSrivastava 여기에 몇 가지 정보 : rkulla.blogspot.se/2014/03/the -path-to-homebrew.html

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다