[HOWTO] List your installed applications

Discussion in 'HOWTO & FAQs' started by gatorparrots, Dec 19, 2002.

  1. gatorparrots

    gatorparrots ~departed~

    Joined:
    Jul 10, 2002
    Messages:
    459
    Likes Received:
    0
    Trophy Points:
    0
    Location:
    Kansas City, MO
    AppleSystemProfiler | grep Applications >> ~/installedApps.txt

    It launches the GUI version of Apple System Profiler, but then it pipes the results of the "Applications" tab through a grep seach and then outputs the result to a text file in your home directory. Simple and clean. (Leave off the '>> ~/installedApps.txt' if you want it to output directly to the shell and not to a text file.)

    One caveat: the above code will just find what is in your /Applications directory.

    To search your drive for Cocoa apps, do this:
    sudo find / -name "*.app" >> ~/CocoaApps.txt

    The last approach is slower, but will find and list all applications in /Applications, whether they are Carbon or Cocoa. (AppleScript authored by pmccann at forums.macosxhints.com):
    Code:
    -- Configure this if necessary: exclude_dirs is just a list
    -- of directory names (within starting_dir) that the script 
    -- should not examine for applications. If you don't have any
    -- directories that need excluding you can set exclude_dirs to {} 
    -----------------------------------------
    set starting_dir to (path to the startup disk as string) & "Applications:"
    set exclude_dirs to {}
    -----------------------------------------
    on getapps(given_dir)
    	global app_list, exclude_dirs
    	tell application "Finder"
    		if the name of folder given_dir is in exclude_dirs then
    			set inside_this to {} --just empty it out
    		else
    			set mylist to (every file of folder given_dir whose file type is "APPL")
    			repeat with filex in mylist
    				set app_list to app_list & the POSIX path of (filex as alias)
    			end repeat
    			set inside_this to every folder of folder given_dir
    		end if
    	end tell
    	repeat with another_dir in inside_this
    		getapps(another_dir as alias)
    	end repeat
    end getapps
    global applist, exclude_dirs
    set app_list to {}
    getapps(starting_dir)
    return app_list
     
    jmo562003 likes this.

Share This Page