天天看點

Mac OS X 利用 Automator/Xcode 控制隐藏檔案

在Mac OS X中想要自由的控制是否顯示隐藏檔案,通常情況下需要在Terminal中鍵入指令,比較麻煩。而在Automator編寫好Terminal代碼,并生成

.app

檔案,将該檔案放入

Applications

檔案夾中,以後隻要點選APP圖示就可以控制隐藏檔案是否顯示啦。

在Automator中編寫Run Shell Script

顯示所有代碼如下:

defaults write com.apple.finder AppleShowAllFiles -bool true
killall Finder
           

隐藏隐藏檔案

defaults write com.apple.finder AppleShowAllFiles -bool false
killall Finder
           

這裡說明下Automator的用法

打開

Launchpad.app

,找到

Automator.app

,點選左下角建立(New Document),選擇建立

Application

,找到Run Shell Script并将項拖入右側區域,鍵入代碼并儲存即可,界面如下:

Mac OS X 利用 Automator/Xcode 控制隐藏檔案

如果你覺得不夠酷的話,可以使用Xcode來編寫控制隐藏檔案顯示和隐藏的App,我做了一個比較簡陋的版本,界面如下:

Mac OS X 利用 Automator/Xcode 控制隐藏檔案

做了一些判斷,例如讀取目前系統是否配置隐藏或顯示,并根據結果,讓界面顯示的不一樣。

判斷的過程如下:

- (void)viewDidLoad {
    [super viewDidLoad];

    system("defaults read com.apple.finder AppleShowAllFiles > /tmp/visible.tmp");

    FILE *f = fopen("/tmp/visible.tmp", "r");

    if (f != NULL) {

        int i;
        fscanf(f, "%d", &i);

        if (i == ) {
            [[self segment] setSelectedSegment:];
        } else {

            [[self segment] setSelectedSegment:];
        }

        fclose(f);

        system("rm /tmp/visible.tmp");
    }

    // Do any additional setup after loading the view.
}
           

顯示按鈕點選的代碼如下:

- (void)visClick {

    system("defaults write com.apple.finder AppleShowAllFiles -bool true");
    system("killall Finder");

}
           

隐藏按鈕點選的代碼如下:

- (void)invisClick {

    system("defaults write com.apple.finder AppleShowAllFiles -bool false");
    system("killall Finder");
}
           

P.S. 由于開發者賬号問題,這裡不放

.app

檔案了。。。