데스크탑에서“Open in terminal”을 클릭하면 ~ / Desktop을 어떻게 열 수 있습니까?


8

대본:

  1. 데스크탑에 있습니다.
  2. 마우스 오른쪽 버튼을 클릭하고 "터미널에서 열기"를 선택합니다.
  3. ~/Desktop홈 폴더가 아닌 터미널을 열려면 이것을 구상하십시오 .

체계:

  • 우분투 16.10
  • 통일
  • 노틸러스

Ctrl-T를 새 터미널과 $ cd Desktop으로 연결하는 것이 훨씬 빠르지 않습니까? 당신은 아마 Des
tomp을

답변:


7

우연히도 빠르고 쉬운 것입니다. 스크립트를 변경하기 만하면 되었기 때문에 이미 약간 가지고있었습니다. :).

스크립트는 데스크탑에 하나 이상의 항목이 있다고 가정합니다.

설정 방법

  1. 존재하지 않는 경우 디렉토리를 만듭니다. ~/.local/share/nautilus/scripts
  2. 아래 스크립트를 빈 파일로 복사하여 terminal_here2(확장자 없음) 으로 저장 한 후 실행 파일로 만드십시오
  3. 로그 아웃했다가 다시 로그인하십시오.

이제 마우스 오른쪽 버튼으로 클릭 어떤 선택 바탕 화면에서 파일 Scripts-> open_terminal2:

여기에 이미지 설명을 입력하십시오

터미널 창이 데스크탑 디렉토리 (내 경우에는 "Bureaublad")에 열립니다

스크립트 :

#!/usr/bin/env python3
import subprocess
import os

def replace(path):
    for c in [("%23", "#"), ("%5D", "]"), ("%5E", "^"),
              ("file://", ""), ("%20", " ")]:
        path = path.replace(c[0], c[1])
    return path

# get the current path
current = replace(os.getenv("NAUTILUS_SCRIPT_CURRENT_URI")) 
# raise the found terminal window
os.chdir(os.path.realpath(current))
subprocess.Popen("gnome-terminal")

1
urllib.parse.unquote% -encoded 문자를 수동으로 바꾸는 대신 사용해야 할 것입니다.
muru

감사합니다! 이미 존재하는 "터미널에서 열기"컨텍스트 메뉴 항목을 사용하는 방법이 없습니까?
orschiro

@orschiro 노틸러스에 하드 코딩 된 것이 두렵습니다. 데스크탑은 NAUTILUS_SCRIPT_CURRENT_URI정확한 디렉토리를 보여 주지만 노틸러스에서 "일반"창으로 분류되지는 않습니다 .
Jacob Vlijm

기능 요청을 제출할 가치가 있다고 생각하십니까? 이 기능이 예상대로 작동하는 것이 일관 될 것입니다.
orschiro

2
gnome-terminal종료 하기를 기다렸다가 종료 하기 위해 Python 프로세스를 계속 실행할 필요는 없습니다 . 대신 os.execlp("gnome-terminal", "gnome-terminal")파이썬 프로세스를로 대체하기 위해 호출 할 수 있습니다 gnome-terminal.
David Foerster

8

스크립트없는 솔루션

  1. 홈 폴더에서 Nautiuls를 엽니 다.
  2. 홈 폴더에서을 마우스 오른쪽 버튼으로 Desktop클릭하고을 클릭 Make link합니다. Link to Desktop파일 이 제공 됩니다.
  3. 바탕 화면에 링크를 배치하십시오. 이제 마우스 오른쪽 버튼을 클릭하고 선택 Open in Terminal하면 현재 작업 디렉토리가 데스크탑으로 설정된 터미널이 열립니다.

이것은 영리한 해결 방법입니다!
orschiro

@orschiro 감사합니다. 너무 빠릅니다. 설정하는 데 1 분도 걸리지 않습니다.
Sergiy Kolodyazhnyy 2012 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.