애쉬 프로필/프로필

애쉬 프로필/프로필

나는 내 자신의 es와 다른 것들 alias로 Ash 세션을 사용자 정의하는 방법을 찾고 있습니다. Bash 파일과 동등한 Ash는 무엇입니까 bashrc?

답변1

Ash는 먼저 다음 파일을 읽습니다(있는 경우).

  • 체계:/etc/profile
  • 사용자:~/.profile

답변2

비로그인 "ash" 또는 "dash" 기반 쉘은 파일의 전체 경로가 환경 변수 ENV(또는 SHINIT)에 포함된 경우 파일을 "가져올" 수도 있습니다.

따라서 어떻게든 설정하면(아마도 ~/.profile 또는 기타 "중요한" 환경 제어에서) 향후 분기된 쉘에서 이 스크립트가 실행됩니다. 비로그인 상황에 매우 편리합니다.

예: .profile에 다음과 같은 내용이 있습니다.

ENV=$HOME/.ashrc; export ENV
. $ENV

또는 명시적인 것을 선호하는 경우:

ENV=/home/kwest/.ashrc; export ENV
# File in 'ENV' will be sourced for future shells. Also source it for this login shell:
. $ENV

위에 표시된 대로 ENV를 전체 명시적 경로로 설정해야 합니다. "~"를 사용하지 마세요.

ash/dash에 대한 명확한 문서를 찾기는 어렵지만 busybox-w32(Windows에서 실행)에서 작동하는 것으로 확인되었습니다. 실제로 Ash 기능 세트에 대한 좋은 문서를 찾는 것은 어렵습니다.

업데이트: 야생에는 다양한 물푸레나무 품종이 존재합니다. "ENV"는 모든 항목에 적용되지 않을 수 있습니다. 변형에 대한 몇 가지 정보는 다음과 같습니다.https://www.in-ulm.de/~mascheck/various/ash/

일부 ash 변형에서는 ENV 대신 "SHINIT"를 사용할 수 있다고 제안됩니다.

답변3

alipline 3.17 문제가 발생한 지 1년 후 나는 해결책을 찾았습니다(아마도 최고는 아닐 것입니다. 어떤 의견이라도 환영합니다).

  • /etc/profile이 줄 앞에 추가하려면 루트로 편집하세요 unset script.
    . $HOME/.profile
    
  • 그런 다음 이전에 설명한 대로 홈 디렉터리에 다음 .profile과 같이 디렉터리를 만듭니다.
    ENV=$HOME/.ashrc; export ENV
    . $ENV
    

.ashrc그런 다음 홈 디렉터리에 하나를 만들어 별칭이나 기타 항목을 설정할 수 있습니다 .

관련 정보