Mac Extract Files From Multiple Folders

  

Sometimes you need to print out a list of files in a particular folder. And sometimes you discover that it’s not at all obvious how you go about that. In this tip, Melissa Holt is going to give. Want to Extract Files with a Specific Extension?? If you want to get all the files with a particular extension, just change the asterisk with that file extension. For example, if you want only excel files, you can use.xls. instead of. So the folder address that you need to use would be. Here's how: Open the folder with files or folders you want to zip up Select the items you want to include in the zip file and right-click on any one of the items. Select 'Compress (x) Items' from the pop-up menu.

Prompting for Files or Folders

  1. One way to do that is with a simple search. Go to the Attachments folder in the Finder. Then Command+f to search. At the top you should see “Search:” and then “This Mac” and “Attachments.”.
  2. Here's one way I'd tackle the problem: Go to common parent of all your pictures. For example, if they're all arranged underneath C: Users Joe Pictures, go to that pictures folder where you see all the other month/year folders. Type an. (asterisk) into the Search box at the top-right. All files and folders under your current position will be.

It’s generally good practice to avoid hard-coding file and folder paths in a script. Prompting the user to select files and folders makes for a more dynamic script that won’t break when paths change.

Prompting for a File

Use the Standard Additions scripting addition’s choose file command to prompt the user to select a file. Listing 26-1 and Listing 26-2 demonstrate how to use this command to display the simple file selection dialog with a custom prompt shown in Figure 26-1.

Mac Extract Files From Multiple Folders

APPLESCRIPT

Listing 26-1AppleScript: Prompting for a file
  1. set theDocument to choose file with prompt 'Please select a document to process:'
  2. --> Result: alias 'Macintosh HD:Users:yourUserName:Documents:ImportantDoc.pages'

JAVASCRIPT

Mac Extract Files From Multiple Folders Without

Listing 26-2JavaScript: Prompting for a file
  1. var app = Application.currentApplication()
  2. app.includeStandardAdditions = true
  3. var document = app.chooseFile({
  4. withPrompt: 'Please select a document to process:'
  5. })
  6. document
  7. // Result: Path('/Users/yourUserName/Documents/ImportantDoc.pages')

Prompting for a Specific Type of File

If your script requires specific types of files for processing, you can use the choose file command’s optional of type parameter to provide a list of acceptable types. Types may be specified as extension strings without the leading period (such as 'jpg' or 'png') or as uniform type identifiers (such as 'public.image' or 'com.apple.iwork.pages.sffpages'). Listing 26-3 and Listing 26-4 show how to prompt for an image.

APPLESCRIPT

Listing 26-3AppleScript: Prompting for an image
  1. set theImage to choose file with prompt 'Please select an image to process:' of type {'public.image'}
  2. --> Result: alias 'Macintosh HD:Users:yourUserName:Pictures:IMG_0024.jpg'

JAVASCRIPT

Extract Multiple Zip Folders

Listing 26-4JavaScript: Prompting for an image
  1. var app = Application.currentApplication()
  2. app.includeStandardAdditions = true
  3. var image = app.chooseFile({
  4. withPrompt: 'Please select an image to process:',
  5. ofType: ['public.image']
  6. })
  7. image
  8. // Result: Path('/Users/yourUserName/Pictures/IMG_0024.jpg')

Prompting for Multiple Files

To let the user choose more than one file, include the choose file command’s optional multiple selections allowed parameter. Listing 26-5 and Listing 26-6 display a prompt asking for multiple images, as shown in Figure 26-2.

APPLESCRIPT

Listing 26-5AppleScript: Prompting for multiple images
  1. set theImages to choose file with prompt 'Please select some images to process:' of type {'public.image'} with multiple selections allowed
  2. --> Result: {alias 'Macintosh HD:Users:yourUserName:Pictures:IMG_0024.jpg', alias 'Macintosh HD:Users:yourUserName:Pictures:IMG_0025.jpg', alias 'Macintosh HD:Users:yourUserName:Pictures:IMG_0026.jpg'}

JAVASCRIPT

Listing 26-6JavaScript: Prompting for multiple images
  1. var app = Application.currentApplication()
  2. app.includeStandardAdditions = true
  3. var images = app.chooseFile({
  4. withPrompt: 'Please select some images to process:',
  5. ofType: ['public.image'],
  6. multipleSelectionsAllowed: true
  7. })
  8. images
  9. // Result: [Path('/Users/yourUserName/Pictures/IMG_0024.jpg'), Path('/Users/yourUserName/Pictures/IMG_0025.jpg'), Path('/Users/yourUserName/Pictures/IMG_0026.jpg')]

Prompting for a Folder

Mac Extract Files From Multiple Folders File

Use the Standard Additions scripting addition’s choose folder command to prompt the user to select a folder, such as an output folder or folder of images to process. Listing 26-7 and Listing 26-8 demonstrate how to use this command to display the simple folder selection dialog with a custom prompt shown in Figure 26-3.

APPLESCRIPT

Extract Files From Folders Windows

Listing 26-7AppleScript: Prompting for a folder
  1. set theOutputFolder to choose folder with prompt 'Please select an output folder:'
  2. --> Result: alias 'Macintosh HD:Users:yourUserName:Desktop:'

JAVASCRIPT

Listing 26-8JavaScript: Prompting for a folder
  1. var app = Application.currentApplication()
  2. app.includeStandardAdditions = true
  3. var outputFolder = app.chooseFolder({
  4. withPrompt: 'Please select an output folder:'
  5. })
  6. outputFolder
  7. // Result: Path('/Users/yourUserName/Desktop')

Prompting for Multiple Folders

To let the user choose more than one folder, include the choose folder command’s optional multiple selections allowed parameter, as shown in Listing 26-9 and Listing 26-10.

APPLESCRIPT

How Do I Extract Files From Multiple Folders On A Mac

Listing 26-9AppleScript: Prompting for multiple folders
  1. set theFoldersToProcess to choose folder with prompt 'Please select the folders containing images to process:' with multiple selections allowed
  2. --> Result: {alias 'Macintosh HD:Users:yourUserName:Desktop:', alias 'Macintosh HD:Users:yourUserName:Documents:'}

JAVASCRIPT

Listing 26-10JavaScript: Prompting for multiple folders
  1. var app = Application.currentApplication()
  2. app.includeStandardAdditions = true
  3. var foldersToProcess = app.chooseFolder({
  4. withPrompt: 'Please select an output folder:',
  5. multipleSelectionsAllowed: true
  6. })
  7. foldersToProcess
  8. // Result: [Path('/Users/yourUserName/Desktop'), Path('/Users/yourUserName/Documents')]

Copyright © 2018 Apple Inc. All rights reserved. Terms of Use | Privacy Policy | Updated: 2016-06-13