Finder에서 파일을 더 빠르게 잠그거나 잠금 해제할 수 있는 상황에 맞는 메뉴 항목

Finder에서 파일을 더 빠르게 잠그거나 잠금 해제할 수 있는 상황에 맞는 메뉴 항목

파일의 상황에 맞는 메뉴에서 파일 잠금("읽기 전용") 상태를 변경할 수 있습니다.

여기에 이미지 설명을 입력하세요

해당 메뉴 항목이 없습니다.

이 플래그를 더 빠르게 설정, 제거 또는 전환하기 위해 Finder(컨텍스트) 메뉴 항목을 생성하려면 어떻게 해야 합니까?

답변1

이를 수행하는 새 메뉴 항목을 만들 수 있습니다.서비스받는파일 및 폴더입력으로모든 애플리케이션오토메이터에서.

두 가지 구현 옵션이 있습니다. 다음 두 가지 Automator 작업 중 하나를 선택하여 서비스 워크플로를 구축하세요.

  • 쉘 스크립트 실행
  • AppleScript 실행

아래 코드는비녀장명령이 가장 복잡하기 때문입니다.

쉘 스크립트 실행

이 변형은 stat파일에 설정된 플래그를 읽는 데 사용됩니다. 이는 일반적으로 를 실행하여 표시되는 값과 동일 ls -lO하지만 stat값을 읽는 더 깔끔한 솔루션입니다. 잠긴 플래그 또는 uchg에는 값이 있으므로 0x2이를 확인하고 있습니다.

chflags는 값을 변경하는 데 사용되며 growlnotify, 는 선택적인 부분입니다.으르렁, 성공 또는 오류 메시지를 표시하는 데 사용됩니다.

여기에 이미지 설명을 입력하세요

셸 스크립트 실행 작업의 일부로 다음 bash 스크립트 코드 조각을 사용합니다.

for f in "$@"
do
    let "$( stat -f "%f" "$f" ) & 0x2"
    if [ $? -ne 0 ] ; then
        chflags uchg "$f" || /usr/local/bin/growlnotify "Error" -m "Failed to lock $f!"
        /usr/local/bin/growlnotify "Locked File" -m "$f was locked!"
    else
        chflags nouchg "$f" || /usr/local/bin/growlnotify "Error" -m "Failed to unlock $f!"
        /usr/local/bin/growlnotify "Unlocked File" -m "$f was unlocked!"
    fi
done

입력을 수신하도록 작업 구성인수로.

 AppleScript 실행

AppleScript 실행 작업의 일부로 다음 AppleScript 코드 조각을 사용하십시오.

on run {input, parameters}
repeat with f in input
        try
            tell application "Finder" to set locked of f to (not locked of f)
        on error errmsg
            tell application "Finder" to display alert errmsg
        end try
    end repeat
end run

예를 들어 권한이 누락되어 작업이 실패하면 변경에 실패한 파일당 하나의 대화 상자가 표시됩니다.

여기에 이미지 설명을 입력하세요

관련 정보