![gsed: Homebrew를 사용하는 macOS에서 명령을 찾을 수 없습니다.](https://linux55.com/image/117250/gsed%3A%20Homebrew%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20macOS%EC%97%90%EC%84%9C%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
저는 oh 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
Mac에서 모든 gnu 명령을 쉽게 사용하려면 어떻게 해야 합니까? 또한 기본 명령 대신 gnu 명령을 사용해야 하는 명령 목록을 알려주십시오. 기다리는 gsed
대신sed
답변1
상술 한 바와 같이다른 질문에, sed
Homebrew를 사용하여 GNU를 설치하는 --with-default-names
경우 /usr/local/bin/sed
.
그렇지 않은 경우 --with-default-names
로 설치됩니다 /usr/local/bin/gsed
.
다음 과 같이 설치된 경우 sed
실행 시 얻는 바이너리에 따라 달라집니다 $PATH
. 상황이 설명과 같다면 GNU가 기본 macOS보다 우선해야 합니다.sed
sed
$PATH
sed
sed
sed
이전에 동일한 셸 세션의 명령줄에서 이 명령을 사용한 경우 셸이 명령 위치를 캐시했을 수 있습니다. 그런 다음 rehash
in 을 사용하여 해당 캐시를 지우 zsh
거나 새 터미널을 열 수 있습니다.
시스템이 sed
GNU가 아닌 기본 구현을 제공하는 경우 일반적 으로 기본 동작에 의존하는 기존 스크립트가 손상되지 않도록 sed
GNU를 설치하는 것이 가장 좋습니다 . 이것이 macOS에서 Homebrew의 기본 동작이 GNU 를 .sed
gsed
sed
sed
gsed
sed