i3 구성에서 스크립트 실행

i3 구성에서 스크립트 실행

질문:

저는 i3-wm을 사용하고 있고 Mod3를 단축키로 사용하고 있습니다. 나는 다음을 가지고 있습니다 ./config/i3/config:

#This command works
  bindsym Mod3+f exec "firefox" 

#This doesn't work nor do my other scripts
  bindsym Mod3+w exec "openBrowser" 

bash에서 두 명령을 모두 실행하면 둘 다 잘 작동하지만 "firefox" 명령만 단축키와 함께 실행됩니다. 내 스크립트를 실행하면 작동하지 않습니다.

추가 세부 사항:

/opt/bin/openBrowser는 내 경로의 스크립트입니다. 또한 이것을 시도했습니다:

#This command works
  bindsym Mod3+f exec /opt/bin/openBrowser

다른 스크립트도 시도했지만 i3이 호출될 때 그 중 아무 것도 작동하지 않습니다. 그래서 스크립트에는 문제가 없다고 확신합니다.

또한 bash에 있을 때 Mod3+w를 수행하면 Mod3+[설정되지 않은 키]를 수행하는 것처럼 커서가 깜박이고 키가 해당 값을 화면에 쓰는 것을 확인했습니다. 그래서 i3는 적어도 이 기능을 실행하려고 하는 것 같습니다.

답변1

설명하신 문제를 재현하려고 합니다. 동시에 두 개의 i3 프로필이 있다는 것을 발견했습니다. ~/.config/i3/config그리고 ~/.i3/config.

내 경우에는 편집 내용이 편집 내용보다 더 나은 ~/.config/i3/config것처럼 보였으므로 아무런 효과가 없었습니다 ~/.i3/config.

이는 가능성이 낮은 시나리오이지만 구성 파일이 여러 개 있고 잘못된 구성 파일을 편집하고 있는지 확인하세요.

답변2

exec명령은 지정한 명령을 셸에 전달하여 애플리케이션을 시작합니다. 이는 귀하의 프로그램이 에 포함된다는 것을 의미합니다 $PATH. 기본값 $PATH은 일반적으로 포함되지 않습니다 . /opt/bin예를 들어 내 프로그램은 다음과 같습니다.

andreatsh@debian:~ 11:28 > echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

/opt/bin경로에 추가하고 다음을 입력해 보세요 ~/.bashrc.

export PATH=$PATH:/opt

나는 몇 가지 테스트를 수행했고 이로 인해 문제가 해결되었습니다. 지금:

bindsym Mod3+w exec somescript
bindsym Mod3+w exec /opt/bin/somescript

동일한 동작을 가지며 스크립트가 작동합니다.

관련 정보