Єдиний реальний спосіб змінити це через GUI - це натиснути приховати розширення у вікні Інформація про Finder . Перевірка цього змінює com.apple.FinderInfoрозширений атрибут, який ви зазвичай не можете редагувати - принаймні, не просто. Однак ми можемо використовувати інструмент для цього.
Щоб працювати нижче, вам, очевидно, потрібно встановити прапорець Показувати всі розширення файлів у налаштуваннях Finder.
Через AppleScript
AppleScript пропонує цю функціональність за допомогою set extension hiddenкоманди. Вам, очевидно, потрібен aliasоб’єкт файлу. Ми можемо отримати це, наприклад, через діалог. Ось лише мінімальний робочий приклад.
tell application "Finder"
set some_file to (choose file)
set extension hidden of some_file to true
end tell
Щоб змінити, просто обмінюватися trueз falseтут. Повний дзвінок тоді, наприклад:
set extension hidden of alias "Macintosh HD:Users:werner:Desktop:file.png" to true
Ви також можете запустити це прямо з файлу сценарію (дякую @DanielBeck за додаток):
on run argv
tell application "Finder" to set extension hidden of (POSIX file (first item of argv) as alias) to true
end run
Збережіть це як filename.scptі запустіть його з командного рядка за допомогою:
osascript filename.scpt targetfile
З SetFileкомандою
Примітка. Це застаріло з Xcode 6.
Якщо у вас встановлений Xcode, ви отримаєте SetFile(1)двійковий файл, який виконує саме те, що ви хочете (і пропонує ще кілька функцій, пов’язаних з атрибутами файлів):
Сховати розширення:
SetFile -a E <file>
Показати розширення ще раз:
SetFile -a e <file>