![Sublime Text 2 내에서 파일 권한을 편집(예: 스크립트 파일을 실행 가능하게 만들기)하려면 어떻게 해야 합니까?](https://rvso.com/image/1326444/Sublime%20Text%202%20%EB%82%B4%EC%97%90%EC%84%9C%20%ED%8C%8C%EC%9D%BC%20%EA%B6%8C%ED%95%9C%EC%9D%84%20%ED%8E%B8%EC%A7%91(%EC%98%88%3A%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%8B%A4%ED%96%89%20%EA%B0%80%EB%8A%A5%ED%95%98%EA%B2%8C%20%EB%A7%8C%EB%93%A4%EA%B8%B0)%ED%95%98%EB%A0%A4%EB%A9%B4%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
예를 들어 쉘 스크립트를 작성할 때 권한을 변경하고 싶습니다(주로실행 가능허가) Sublime Text 2 내에서.
어떻게 이를 달성할 수 있나요?
답변1
다음은 현재 편집 중인 파일에 대한 범용 권한 편집 명령이다. 플러그인 및 Sublime Text 2 메뉴 편집에 대한 자세한 설명은 다음을 참조하세요.이 게시물.
그것은 추가됩니다모드 변경에서 명령편집하다메뉴. 선택하면 사용자에게 chmod에 유효한 인수 문자열(예 : u+rwx
또는 755
, 기본값은 과 같이 현재 설정된 4자리 8진수 권한 문자열임 0644
)을 입력하라는 메시지가 표시되며, 이는 편집 중인 파일에 적용됩니다.
선택하다도구 » 새 플러그인, 다음 내용을 삽입하고 다음과 같이 저장 chmod.py
하십시오 ~/Application Support/Sublime Text 2/Packages/User/
.
import sublime, sublime_plugin, subprocess
def chmod(v, e, permissions):
subprocess.call( [ "chmod", permissions, v.file_name() ] )
def stat(filename):
proc = subprocess.Popen( [ "stat", "-f", '%Mp%Lp', filename ], stdout=subprocess.PIPE )
return str(proc.communicate()[0]).strip()
class ChangeModeCommand(sublime_plugin.TextCommand):
def run(self, edit):
if sublime.platform() != 'osx':
return
fname = self.view.file_name()
if fname == None:
sublime.message_dialog("You need to save this buffer first!")
return
perms = stat(fname)
def done(permissions):
chmod(self.view, edit, permissions)
sublime.active_window().show_input_panel(
"permissions to apply to the file " + fname + ": ", perms, done, None, None)
이 명령에 대한 메뉴 항목을 삽입하려면 다음을 에 추가하고 ~/Application Support/Sublime Text 2/Packages/User/Main.sublime-menu
파일이 이미 있는 경우 기존 파일 내용과 병합합니다.
[
{
"id": "edit",
"children":
[
{"id": "wrap"},
{ "command": "change_mode" }
]
}
]
답변2
기본적으로 Linux에서도 작동하지만 stat
명령은 다르게 작동하며 필요하지 않은 수많은 정보를 표시합니다.
stat -c %a filename
대신에 '644'와 같은 것을 반환합니다.