태그 보관물: zsh

zsh

zsh에서 bash를 사용하여 쉘 스크립트를 ‘소싱’하는 방법은 무엇입니까? 수 있습니다). url-quote-magic:24: bad pattern: (

zsh를 사용하고 있으며 매우 좋아하지만 bash를 올바르게 평가 해야하는 컴파일 스크립트가있는 Android 소스에서 많은 작업을 수행합니다. 이러한 스크립트는 컴파일 전에 소싱해야하며 컴파일 중에 사용되는 환경 변수 및 쉘 기능을 정의해야합니다.

Zsh는 이러한 파일을 소싱 할 수 없으며, emulate bash공간을 사용할 때마다 쉘 에서 문제가 발생하여 쉘이 작동하지 않게됩니다 (oh-my-zsh를 사용 중일 수 있습니다).

url-quote-magic:24: bad pattern: ( ):/(|/localhost)/*

이 파일을 평가하기 위해 bash로 전환하지 않거나 bash 인스턴스를 호출하고 zsh 세션으로 소싱하는 동안 정의 된 새로운 환경 변수 / 함수를 가져 오는 방법이 있습니까? 아니면 Android에서 작업해야 할 때마다 bash로 전환 할 운명이 있습니까?

편집 : 내 자신의 질문에 대한 답변을 찾았습니다. 다른 쉘을 사용하여 파일을 소싱하는 것은 불가능한 것처럼 보이지만 Android 매크로 파일이 실패하는 경우이 페이지에서 수정되었습니다.

http://nilvec.com/building-cyanogen-from-source/

기본적으로 간단히 설정 unsetopt nomatch하면 zsh에서 일치하지 않는 와일드 카드에 대한 불평을 중지하도록 요청하므로 스크립트를 완료하는 데 충분합니다. complete하나의 Android 매크로에 완성 기능을 추가하기 위해 bash internal 명령을 사용하는 경우 여전히 하나의 오류가 남아 있지만 여기서는 절대 중요하지 않습니다.



답변

컴파일 명령을 bash 스크립트에 넣을 수 있는데,이 스크립트는 컴파일 명령을 실행하기 위해 컴파일 스크립트를 제공합니다.

같은 것

    #!/bin/bash
    . /path/to/environmentscript
    . /path/to/morefunctionsscript

    compile_command

그런 다음 compile_command직접 호출 하는 대신 새 bash 스크립트를 호출하면됩니다.


답변