На днях смотрел статистику поиска и увидел, что очень много пользователей заходит на блог в поисках ответов на вопросы о том, как можно скрыть или наоборот сделать видимыми файлы и папки в Mac OS X. В прошлом я уже публиковал статьи о том как это можно сделать при помощи терминала.
Но, видимо, сам подзабыл как был новичком и насколько непривычным для меня всё было в новой операционной системе. Задумался о том, как можно немножко упростить жизнь новым мак-пользователям и на первое время оградить их от консоли. Вчера «написал» три маленьких скрипта, обернул из симпатичной обёрткой… Получилось 3 программки, которые позволят производить манипуляции скрытия и отображения с файлами и папками.
Первую я назвал Hide. Это обычный AppleScript обёрнутый в оболочку программы. С помощью неё можно спрятать любую папку или любой файл. Работать с ней предельно просто: достаточно перетянуть на значок программы файл или папку, которую необходимо скрыть, как тот час они исчезнут. Есть и второй вариант: запустить двойным кликом это приложение и в Finder выбрать то, что нужно скрыть. Но мне кажется, что перетягивание намного проще 🙂
Для «ковырялкиных» даю исходный код на AppleScript:
-- при двойном клике set chosenFile to choose file with prompt "Выбери файл или папку для скрытия:" do shell script "/usr/bin/chflags hidden " & quoted form of POSIX path of chosenFile -- при перетягивании на значок программы on open chosenFile do shell script "/usr/bin/chflags hidden " & quoted form of POSIX path of chosenFile end open
Вторую я назвал Show & Hide. Это уже bash-скрипт так же обёрнутый оболочкой. С помощью этой программки можно включить отображение скрытых файлов в Finder и с её же помощью можно снова их скрыть. Для отображения скрытых файлов нужно двойным кликом запустить программку, после чего все скрытые файлы станут видимыми. Для скрытия этих файлов нужно так же двойным кликом запустить программку, и файлы снова скроются.
Работает это всё предельно просто:
#!/bin/bash SOST=`defaults read com.apple.finder AppleShowAllFiles`; if [ "$SOST" = "" ]; then { defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder exit 0 } fi if [ "$SOST" = "FALSE" ]; then { defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder exit 0 } fi if [ "$SOST" = "TRUE" ]; then { defaults write com.apple.finder AppleShowAllFiles FALSE killall Finder exit 0 } fi
И третью программку я назвал Show. Наверное, из названия вы уже поняли, что эта программка является аналогом Hide, только предназначена для отображения скрытых файлов. Работает аналогично: с помощью программки Show & Hide делаем видимыми все файлы, затем перетягиваем скрытую папку или файл на программку и она становится видимой.
Исходный код на AppleScript:
-- при двойном клике set chosenFile to choose file with prompt "Выбери файл или папку для отображения:" do shell script "/usr/bin/chflags nohidden " & quoted form of POSIX path of chosenFile -- при перетягивании на значок программы on open chosenFile do shell script "/usr/bin/chflags nohidden " & quoted form of POSIX path of chosenFile end open
Небольшие уточнения и изменения:
- Для работы приложений в операционных системах Mac OS X Snow Leopard и более ранних версий возможно понадобится установка пакета для разработчиков Xcode (имеется на комплектных установочных дисках или загружается с официального сайта Apple). В операционных системах OS X Lion и OS X Mountain Lion все компоненты для работы программ имеются изначально, поэтому дополнительно устанавливать Xcode не нужно.
- Три приложения в итоге были объединены в два:
- Invisible ON & OFF – для отображения и последующего сокрытия невидимых системных файлов и папок;
- Hide & Show – для скрытия файлов или папок;
Просто замечательно, чувак! «Show» и «Hide» как раз не хватало. Только вот, чую, можно как-то без Xcode сделать.
В «Show» и «Hide» используется консольная утилита chflags, которая (по-моему) устанавливается с пакетом для разработчика Xcode (в Mac OS X до Lion её вроде небыло в системе по умолчанию). Если данной утилиты нет, и весь Xcode ставить не хочется, можно закинуть в директорию /usr/bin/ содержимое вот этого архива, а потом назначить атрибуты и права доступа через Терминал:
А потом:
Но я б один раз потратил траффик и время, и установил бы Xcode, который и в будущем может выручить.
Разве совсем нет встроенных средств?
Я-то сам поставил Xcode.
Вот, в общем то, такие встроенные средства 😉 Ну или точку можно вначале имени файла/папки поставить через консоль и он/она тоже скроются. Но это не вариант для системных файлов и директорий.
Ну не встроенные же.
у меня не срабатывает Show & Hide. Спрятать папку могу. Но после запуска Show & Hide не показывает скрытые файлы или папки.
???
Snow Leopard – версия
все заработало после того как сам вбил в терминал команду на показ файлов и папок… после этого скрипт начал нормально работать
Алексей, а что именно Вы набрали в терминал? У меня та же проблема. Стоит lion
Все заработало, спасибо всем и особенно автору поклон
Скажите, пожалуйста, что именно Вы сделали, для того чтобы заработало? у меня скрылась нужная папка, а найти никак не получается(
Скачай снова архив – в нём обновленные версии программок. Всё должно заработать.
Спасибо!
все работает! и все нашлось)
Пожалуйста 😉
Извините, пожалуйста.
у меня возникли еще вопросы.
при скрытии папки, файлы находящиеся в ней, отображаются в Finder. как сделать так, чтобы скрывалась не только папка, но и файлы внутри нее?
Заходишь в папку, выделяешь все файлы (можно сочетанием клавиш Cmd ⌘ + A), и перетягиваешь их на программку Hide or Show.
A у меня сработала программа Show & Hide но я не могу обратно скрыть файлы(((
Странно. Должно всё работать, тестилось неоднократно. Возможно вы скачали старые версии? Скачайте прикрепленный в конце поста архив с программами Hide or Show и Invisible ON & OFF (они точно обновленные), запустите программу Hide or Show, в диалоговом окне нажмите кнопку Скрывать (если вы хотите скрыть файл или папку) или Отображать (если хотите сделать скрытый файл или папку видимыми). Теперь, когда откроется окно для выбора файлов, нажмите комбинацию клавиш Shift ⇧ + Cmd ⌘ + . (это нужно для того, чтоб отобразить все скрытые файлы и папки), выберите необходимые файли или папки и нажмите кнопку Открыть. Всё. Для того, чтоб глобально управлять отображением или скрытием файлов воспользуйтесь другой программой – Invisible ON & OFF. Надеюсь, я всё по-человечеки объяснил? 😉
скрыл случайно SSD диск, сам не знаю как (случайно!), теперь твоя программка его не хочет вернуть и отображать и пишет permission denied что то такое и не отображается!
А вот кто бы подсказал, как сделать поиск в родном mail.app, который находится на криптованном диске?
Стандартный поиск не работает, спотлайт тоже, хотя, сами файлики с письмами лежат, как и положено в скрытом разделе библиотеки (сделать его видимым тоже не помогает).
Поиск в Mail.app лучше производить через сам Mail.app.
оооо! спасибо тебе, мой друг! шоу/хайд сработало не сразу, правда, а после раза третьего. Но сработало. Долго искал и мучался. Спасибо!
Должно сработать после 2-го раза максимум. Пользуйся на здоровье 😉
Божеее!!!! Пол вечера убил!!! Дай Бог тебе здоровья, чувак!!! СПАСИБО!!!!
Сколько радостей 😀 Да не за что 😉
P.S.: Письмо на почту получил. Посмотрю позже ибо сейчас работаю на 10.9.5. Ёся глючная что ППЦ, и и интерфейс раздражает -_-
Спасибо за программы, они действительно очень помогают!
У меня вопрос по скрытии usb flash? Ваша программа скрыла раздел, но после перезагрузки он обратно появился не скрытым.
А у меня такой вопрос. Все работает все круто, но вот, когда отображаются скрытые папки нет возможности открыть в том же окне finder двойной клик просто не реагирует. Надо открывать в новом окне, чуть напрягает…Не подскажете?