Katana24
Katana24

Reputation: 8959

Can't make a directory using a variables value - Command Prompt

I'm trying to set up a simple backup process for a folder on my C drive that will back that folder up to another location on the network. I know how to create a scheduled task but I'm struggling to understand why my command prompt code won't work - I'm a novice when it comes to the Command Prompt though!

So my question is two fold:

Why does echo %variableName% not return the variable value - it only returns %variableName%.

This is what I type in:

@echo off
set varA = 5
echo %varA%
%varA%       <- This is what its popping out

Do I need different preceeding and succeeding characters for this?

I want to create a folder with the date for the name (I do realize that are quite a few questions out there on this but they didn't work), how do I do it?

Here is what I tried:

set folder_name = %DATE:/=_%
set folder_name                 <- Display value for folder_name
folder_name = Wed 11_06_2013    <- Actual value

When I try to do this:

mkdir %folder_name%
dir

Creates a folder with this %_date% as the name.

Where am I going wrong?

Thanks

Upvotes: 1

Views: 5786

Answers (1)

Magoo
Magoo

Reputation: 80003

Space is significant in SET statements.

SET varspace=spacevalue

will set a variable named "varspace" to "spacevalue"

Remove the spaces and it should be plain sailing...

Oh - except that if the variable contains a space, then commands such as MD or mkdir (which are synonyms) require "rabbits ears" around the value, thus:

mkdir "%folder_name%"

Upvotes: 2

Related Questions