?
Solved

Batch File To Add and Remove Files from Multiple Locations in a Mixed Enviroment

Posted on 2014-03-31
8
Medium Priority
?
303 Views
Last Modified: 2014-05-04
Hi Experts,

We are migrating our business application to another server, as a result the following changes need to be applied to all PC's:

Shortcut Links to be added on Desktop (3)
Config files to be placed in applications config directory which will link to the shortcuts applied to the desktop
Start Menu Folder to be added which includes the shortcuts added to the desktop
Original Start Menu folder to be deleted

Now I have network shares put in place which includes the client config and the shortcuts, I have run the following batch file which has worked successfully for adding the shortcuts on the desktop:

@echo off
setlocal
set UserRoot=C:\Documents and settings
REM *** Process all profile folders:
for /d %%a in ("%UserRoot%\*.*") do call :process "%%a"
:: *** subroutine 'process' starts here:
:process
set UserFolder=%~1
echo Processing %UserFolder% ...
REM *** %UserFolder% now contains the folder name currently being processed.
REM *** Add your backup/deletion code between this line and the "goto :eof" at the end:
cd "%UserFolder%\Desktop\"
cd "%UserFolder%\Desktop\"
If exist "%UserFolder%\Desktop\Epicor2*" goto finish
copy "\\htukdc1\IT$\Epicor\Shortcuts\*" "%userprofile%\desktop\"
goto :eof

We are currently in a mixed environment with a combination of windows XP and Windows 7 machines, running both x86 and X64 operating systems.

I am not to savvy with scripting and was wondering whether it would be possible to enhance the script above to perform all actions required, windows 7 variables do not match up too well with XP variables and this has caused me grief :-(

Ideally I would like a single logon script to perform the above actions, your help is much appreciated, thanks in advance!

Regards,
0
Comment
Question by:HaywardTyler
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 65

Accepted Solution

by:
RobSampson earned 2000 total points
ID: 39968267
Hi, I would think something like this is all you would need, which just checks for C:\Users (typically only exists on Windows 7 machines) and sets the UserRoot accordingly.

@echo off
setlocal
IF EXIST "C:\Users"
(
set UserRoot=C:\Users
)ELSE(
set UserRoot=C:\Documents and settings
)
REM *** Process all profile folders:
for /d %%a in ("%UserRoot%\*.*") do call :process "%%a"
:: *** subroutine 'process' starts here:
:process
set UserFolder=%~1
echo Processing %UserFolder% ...
REM *** %UserFolder% now contains the folder name currently being processed.
REM *** Add your backup/deletion code between this line and the "goto :eof" at the end:
cd "%UserFolder%\Desktop\" 
cd "%UserFolder%\Desktop\" 
If exist "%UserFolder%\Desktop\Epicor2*" goto finish
copy "\\htukdc1\IT$\Epicor\Shortcuts\*" "%UserFolder%\desktop\"
goto :eof

Open in new window


Regards,

Rob.
0
 

Author Comment

by:HaywardTyler
ID: 39968743
Hi Rob,

Thanks for your assistance, the above meets requirement 1, a colleague of mine advises that Dell Kace may be the answer to my problems, so will talk it through with him to attempt to find solution before I look at using a logon script.
0
 
LVL 27

Expert Comment

by:skullnobrains
ID: 39971669
i think the environment var %PROFILESFOLDER% should contain the proper location whatever the windows version
0
Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

 
LVL 49

Expert Comment

by:Martin Liss
ID: 40026335
I've requested that this question be deleted for the following reason:

Not enough information to confirm an answer.
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 40026336
At this stage, I believe my script in comment ID: 39968267 meets the user requirement.
0
 
LVL 27

Expert Comment

by:skullnobrains
ID: 40040420
won't work for a seven machine migrated from xp for example : the c:\users folders will exist but the accounts will be located in documents and settings.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question