xinitrc의 프로세스에서 실행 명령을 대체합니다.

xinitrc의 프로세스에서 실행 명령을 대체합니다.

내 기분은 .xinitrc이런데

#!/bin/sh

bash <(sed -n 'H
    /^exec ./{
    x
    s/\([^\n]\+ &\n\)*exec .*//
    p
    }' /etc/X11/xinit/xinitrc)

xmonad &
# ...
exec xterm

표준에서 마지막 비트를 먼저 빼는 것이 xinitrc단순히 표준 파일(마지막 비트 빼기)을 복사하는 것보다 더 깔끔합니다. 그러나 어떤 이유로 작동하지 않습니다. 이를 사용하면 startx콘솔을 떠날 필요가 없습니다. 내가 뭘 잘못했나요?

답변1

/bin/sh이를 지원하지 않는 프로세스 대체 ( #!-line에서 알 수 있듯이)를 사용하려고 하기 때문에 작동하지 않습니다 . 또는 와 같이 프로세스 대체를 수행하는 방법을 알고 있는 쉘을 사용하십시오 bash.zsh

(더 안정적인) 또 다른 방법은 ~/.xinitrc시스템 버전을 복사하여 자신만의 파일을 만든 다음 변경하는 것입니다.

관련 정보