2017-01-06 9 views
0

인수로 파일 이름을 얻는 쉘 스크립트를 실행하려고합니다.Nautilus에서 쉘 스크립트로 파일 이름을 전달하십시오.

터미널로 이동하여 전체 PATH를 입력하면됩니다.

그러나 나는 파일 관리자 또는 노틸러스 (nautilus)에서 인수 (전체 경로)를 보내고 싶기 때문에 더 사용자 친화적으로 만들려고합니다.

가능합니까?

+0

예 가능합니다. – kaylum

+0

@kaylum 나는 암시 된 "how"가 있다고 생각한다. – Barmar

+0

@ kaylum ... 어떻게해야합니까 ?? 파일 관리자로 가서 파일의 인수를 인수로 얻는 것보다 스크립트를 시작하는 것. – Agustin

답변

0

I 작동 내가 찾은 방법을 공유하기 위하여려고하고 확인을 클릭합니다.

내가하려는 것은 명령 줄에 입력하지 않고 경로를 인수로 전달하는 것이 었습니다. 사용자 친화적 인 제품입니다.

그래서 zenity 도구 인 파일 선택을 사용하여 파일 관리자를 탐색하고 파일을 선택합니다.

./script.sh $(zenity --file-selection) 

이제 내가 선택한 파일의 경로를 전달하고 있습니다.

이 문제를 해결하려면 명령 줄에 입력하십시오.

zenity --file-selection 
1

가능합니다. 방법은 다음과 같습니다.

스크립트를 ~/.local/share/nautilus/scripts/ 폴더로 복사하십시오.이 경로는 다음과 같이 현재 사용자 정보 (예 : /home/john/.local/share/nautilus/scripts/)로 확장됩니다.

이제 스크립트에서 $1을 사용하여 인수를 캡처하십시오. 예를 들어, 다음 스크립트는 다음과 같이 할 수의 당신의 스크립트 파일을 삭제하기위한 것입니다 가정 해 봅시다 :

#!/bin/bash 
rm -f "$1" 
exit 

지금, Nautilus를 다시 시작하고 당신이 작업을 수행 할 파일로 이동합니다. 파일을 마우스 오른쪽 버튼으로 클릭하고 나타나는 메뉴에서 "scripts"를 선택하고 나타나는 sumenu에서 스크립트 이름을 선택하십시오. 그러면 스크립트 이름과 함께 스크립트가 실행됩니다.

참고 : 예를 들어, 첫 번째 스크립트 실행을하는 것을 잊지 마세요 :

+0

안녕하세요 고맙습니다. 지금 당장 그것을 시도 할 것입니다. 나는 또 다른 방법으로 그것을 발견했다. 노틸러스 (nautilus)에서 스크립트를 정확히 실행하는 것은 아니지만 나에게 적합합니다. 누군가가 유용하다고 생각하는 것처럼 공유하고 있습니다. 스크립트를 실행할 때 zenity file selection tool을 사용하십시오. 내 예제에서는 ./script.sh $ (zenity --file-selection) 이렇게하면 파일을 탐색하고 파일을 선택할 수 있습니다. 경로는 스크립트의 인수로 전달됩니다. 다시 한 번 모두에게 도움과 행운을 빕니다. – Agustin

+0

반갑습니다. 스택 오버플로에 대한 대답이 도움이되었을 때 좋은 답변임을 다른 사람에게 알릴 수 있도록 해당 대답을 upvoting하는 것을 고려하십시오.또 다른 한가지 : 스크립트가 작동하려면 루트 권한이 필요하다면, 호출시'gksudo '를 사용하여 스크립트를 수행 할 수 있습니다. –

+0

오우 나는 Upvoted를 했어. 단지 내가 여기 새로 왔을 때, 투표가 공개되기 전에 나는 명성을 가져야한다고 말한다. 그러나 그것은 중요하지 않습니다. – Agustin