help
help

Reputation: 99

Applescript to make new folder

I Want to make a new Folder command in apple script

Why dosent this script work?

tell application "Finder"
activate
end tell
tell application "System Events"
tell process "Finder"
    tell menu bar 1
        tell menu bar item "File"
            tell menu "File"
                click menu item "New folder"
            end tell
        end tell
    end tell
end tell
end tell

Upvotes: 3

Views: 24049

Answers (6)

jason m
jason m

Reputation: 11

tell application "Finder"
    set thepath to alias "Macintosh HD:Users:JasonMagnuson:Documents:" as text
    make new folder at thepath with properties {name:"nov_archive"}
end tell

Upvotes: 1

Blaise
Blaise

Reputation: 13479

I don't know if running bash commands within AppleScript is cheating, but you can also do:

do shell script "mkdir ~'/Desktop/New Folder'"  

Which is useful when you need to create sub folders on-the-fly when they don't exist yet:

do shell script "mkdir -p ~'/Desktop/New Folder/Bleep/Bloop'"  

Upvotes: 2

deek5
deek5

Reputation: 365

You can directly with an applescript script by simulating keystroke on ("N" and command and shift) this will create a new folder on the desktop or in the open Finder window.

Below the script, you can test it in the script editor

tell application "System Events" to tell process "Finder"
    set frontmost to true
    keystroke "N" using {command down, shift down}
end tell

Your script works if you add under "tell process" Finder " "set frontmost to true" Which give

tell application "System Events"
    tell process "Finder"
        set frontmost to true
                tell menu bar 1
            tell menu bar item "File"
                tell menu "File"
                    click menu item "New folder"
                end tell
            end tell
        end tell
    end tell
end tell

Upvotes: 0

Mr. Science
Mr. Science

Reputation: 39

NOTE: This can fail for two reasons;
(1) '~' trapped in singlequote won't parse.
(2) space in '/New Folder/' will break the path.

do shell script "mkdir -p '~/Desktop/New Folder/Bleep/Bloop'"

SOLVED:

do shell script "mkdir -p ~/Desktop/" & quoted form of "New Folder/Bleep/Bloop" 

Upvotes: 1

ryan Delaney
ryan Delaney

Reputation: 19

tell application "Finder"
activate
end tell
tell application "System Events"
tell process "Finder"
    tell menu bar 1
        tell menu bar item "File"
            tell menu "File"
                click menu item "new folder"
            end tell
        end tell
    end tell
end tell
end tell

--you capitalize the N in new folder the new folder button is not capped.

Upvotes: 1

mipadi
mipadi

Reputation: 410552

You can do it more directly with AppleScript:

tell application "Finder"
    set p to path to desktop -- Or whatever path you want
    make new folder at p with properties {name:"New Folder"}
end tell

Upvotes: 28

Related Questions