Solved

# Powershell copy shortcut and point to other server

Posted on 2013-11-27
Medium Priority
1,003 Views
Hi guys i have the following code below which works great for copying FF to the servers in the txt file. However id like to go one step further and copy the shortcut for the FF.exe to another server. What would be the best way to achieve this.

$servers =Get-Content "C:\Users\Downloads\exchange.txt" foreach ($servers1 in $servers ) {$copy = Copy-Item -Path C:\FirefoxPortable -Filter *.* -Destination "\\$servers1\c$\it" -Recurse

}
0
[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
• 4
• 2

LVL 35

Expert Comment

ID: 39682925
$WshShell = New-Object -comObject WScript.Shell$Shortcut = $WshShell.CreateShortcut("\path\to\shortcut)$Shortcut.TargetPath = "\path\to\target"
$Shortcut.Save() HTH, Dan 0 LVL 15 Author Comment ID: 39682955 Hi Dan its a little bit complicated so i will give more details. im copying from server1 for example to london1 which is where the full app will be and the shortcut will be copied to london2 and london3 for example. But there are many other sites for example so would i need 1 txt file with all of the 2 and 3 servers but how will they point to server1 of that site. Each 2 and 3 server has to point to the shortcut on server1 for that site. Hope this makes sense 0 LVL 35 Expert Comment ID: 39682971 OK, please post a sample of your exchange.txt so I can get an idea of the hierarchical data. 0 LVL 15 Author Comment ID: 39682997 for example this is whats in the exchange.txt file. but on each site there is a 2 and 3 server. so the shortcuts would need to be to london2 and london3 for example but ref back to the .exe on london1 london1 newyork1 paris1 0 LVL 15 Author Comment ID: 39683558 is this even possible? 0 LVL 71 Accepted Solution Qlemo earned 2000 total points ID: 39683616 You would need to have two columns. One for the copy target and link target, and a second for the list of servers the link should be created on: server, linksrv "london1", "london2,london3" "paris1", "paris2, paris3"  Then you could run $sh = New-Object -Com WScript.Shell

$target = '\\' +$_.server + '\c$\it\' Copy-Item -Path C:\FirefoxPortable -Destination$target -Recurse
foreach ($srv in$_.linksrv -split ',') {
$link =$sh.CreateShortcut('\\' + $srv + '\C$\users\Public\Desktop\Firefox.lnk')
$link.TargetPath =$target + 'firefox.exe'
}
}

0

LVL 15

Author Closing Comment

ID: 39692455
excellent thanks
0

## Featured Post

Question has a verified solution.

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

Auditing domain password hashes is a commonly overlooked but critical requirement to ensuring secure passwords practices are followed. Methods exist to extract hashes directly for a live domain however this article describes a process to extract u…
There are times when we need to generate a report on the inbox rules, where users have set up forwarding externally in their mailbox. In this article, I will be sharing a script I wrote to generate the report in CSV format.
Learn the basics of while and for loops in Python.  while loops are used for testing while, or until, a condition is met: The structure of a while loop is as follows:     while <condition>:         do something         repeate: The break statement m…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
###### Suggested Courses
Course of the Month10 days, 12 hours left to enroll