로그인 시 GUI 명령을 실행하는 스크립트 대안 - 그렇게 해서는 안 됩니다.

로그인 시 GUI 명령을 실행하는 스크립트 대안 - 그렇게 해서는 안 됩니다.

내 주요 데이터가 에 없기 때문에 $HOME원하는 디렉터리( caja)에서 GUI 파일 관리자를 시작하고 이를 로컬 실행 디렉터리( ~/.local/bin)에 넣는 작은(실행 가능) 스크립트를 만들었습니다.

#!/bin/bash
/usr/bin/caja /datadir

표준 명령을 대체하려면 caja스크립트의 이름이 동일하고 로컬 실행 파일의 경로가 my ~/.profile: 에 먼저 나열됩니다.

if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

지금까지는 잘 작동하지만 로그인할 때마다 기본적으로 파일 관리자가 열립니다. 세션 저장이 활성화되지 않았으며 디렉터리의 다른 실행 파일이 실행되지 않았습니다(일부 echo스크립트 및 다른 GUI 명령도 시도함).

이 동작을 어떻게 억제할 수 있습니까?

Debian 10에서 MATE를 DE로 사용(테스트)

답변1

caja파일 관리자뿐만 아니라 데스크탑 기호(협회). 따라서 MATE 세션을 시작할 때 실행됩니다. 이는 적절한 MATE 세션 시작을 위해서는 불가피한 것 같습니다.

gnome의 natuilus도 마찬가지입니다.


빠르고 더러운 해결책은 스크립트에 다른 이름을 지정하고 스크립트가 caja로그인 시 심볼릭 링크(Caja 시작 스크립트의 이름을 지정하고 이를 가리킴)를 생성하도록 하는 것입니다. 그러나 데스크톱이 실행된 후에는 심볼 링크를 삭제합니다 ~/.bash_logout(가정). 쉘은 bash입니다).

관련 정보