Linux Mint 18.x의 작업 솔루션

Linux Mint 18.x의 작업 솔루션

운영 체제: Linux Mint 18.x Cinnamon 64비트

현재 작업 디렉터리에서 Cinnamon의 기본 파일 관리자와 일반 파일 관리자를 실행하고 싶다고 가정해 보겠습니다 nemo.sudo

sudo nemo .

질문:

  1. 다음과 같이 내가 신경 쓰지 않는 다양한 작은 오류가 표시됩니다.

    (nemo:21081): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
    
  2. 전원을 끈 후 gnome-terminal제어권이 다시 나에게 돌아오기까지 정확히 30초가 걸렸습니다.


목표는 bash alias또는 을 정의하는 것입니다 function. 이는 이러한 측면이나 다른 부정적인 측면을 갖지 않습니다.

또한:

  1. Nemo와 Terminal을 독립적으로 사용할 수 있도록 즉시 제어권을 넘겨주고 싶습니다.

  2. 마치 작업 디렉토리인 것처럼 실행하거나 일부 디렉토리를 인수로 제공하고 싶습니다.

답변1

내 관점에서 가장 효율적인 방법은 다음과 같습니다.

  1. 사용하다서브쉘, ()실제 명령의 시작과 끝입니다.

  2. &마지막으로 명령을 배경으로 설정합니다.

  3. 백그라운드 프로세스로 실행하고 있기 때문에정상 sudo성공하지 못하므로 이에 해당하는 그래픽을 사용해야 합니다 gksudo.

  4. IMHO 이것은 불가능합니다 . 인수가 제공되었는지 확인하고 그에 따라 조치를 취해야 하므로 대신 aliasa를 정의해야 합니다 .function

  5. 모든 출력을 블랙홀( > /dev/null 2>&1)로 리디렉션하는 것이 좋은 습관입니다. 이 경우에는 실제로 아무것도 수행하지 않습니다.

다음 기능은 내 기대에 부응합니다. 솔루션을 자유롭게 추가하세요.


Linux Mint 18.x의 작업 솔루션

function sunemo {
    if [ -z "$1" ]
    then
        (gksudo nemo .    > /dev/null 2>&1 &)
    else
        (gksudo nemo "$1" > /dev/null 2>&1 &)
    fi
}

Linux Mint 19.x에서는 gksudo이것이 제거되었음을 알 수 있습니다.

Linux Mint 19.x의 작업 솔루션

function sunemo {
    if [ -z "$1" ]
    then
        (nemo "admin://$PWD" > /dev/null 2>&1 &)
    else
        (nemo "admin://$1"   > /dev/null 2>&1 &)
    fi
}

관련 정보