posted 02/07/09

A summer of working, driving…

By Fredrik Wall

…and lots of scripting.

This summer is a summer of:

  • Working
    New job and at a customers office.

    It’s fun to be out and working as a IT consultant again.

  • Driving
    We are currently stay at my mother and father in laws house for 2 weeks.

    So I’m driving extra long to work and home to give the flowers some water time to time.

  • Scripting
    I’m have currently some PowerShell projects that I work on.
    • GUI for some Certutil –scroot stuff
      With my friend Dxter.
    • GUI for managing Active Directory
      Playing around with a script that can be modified to work for lots of companies in no time.

      Settings that add/removes fields.
      Will add user with lots of information, share etc.

    • 2 articles on PowerShell
  • Web
    I haven’t left this area totally.

    Working on the new site for my company, Riverpoint.
    The site are running on a web server with Joomla.

    It’s very nice and flexible!

 

Andra (Bloggar.se) skriver om: , , , , , , ,

No Comments
read more
posted 08/04/07

Första PowerShell scriptet

By Fredrik Wall

flagse

Nu när Microsoft till och med ska skicka med PoweShell i Longhorn från och med Beta 3 (förhoppningsvis i alla fall) så är det hög tid att börja titta på PowerShell Scripting.
Här kommer en liten snabb "komma igång guide" från mig.

Innan Microsoft börjar skeppa PowerShell med som standard i något operativsystem så får man hämta det här:
http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx

Tyvärr, det finns ingen version för de senare buildsen på Longhorn (officiell i alla fall).

När du har installerat PowerShell fungerar det att köra kommandon, men för att köra Script måste man ändra "Excecution Policy".
Default är den inställd på "Restricted", Inga script kan köras.
Det finns ytterligare 3 lägen:
AllSigned – Går endast att köra script som är signerade av en "trusted publisher".
RemoteSigned – Nerladdade script måste vara signerad av en "trusted publisher".
Unrestricted – Inga begränsningar, alla script kan köras.

För att ändra Execution Policy till RemoteSign skriver man Set-ExecutionPolicy RemoteSigned.
Vill man veta om det fungerade eller om man är nyfiken på vilken Execution Policy som gäller på datorn där man är så skriver man Get-ExecutionPolicy.

Nu är grunderna för att köra PowerShell script på plats, så då skriver vi ett första skript.
Öppna din favorit editor och skriv följande:

write-host "Hello World!"

Spara filen som helloworld.ps1

För att starta scriptet om man är inne i PowerShell kan man antingen skriva PowerShell ./helloworld.ps1 eller ./helloworld.ps1.

Missar man att skriva ./ eller sökvägen till skriptet så får man upp följande felmeddelande:

The term ‘helloworld.ps1′ is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try again.

At line:1 char:11

+ helloworld.ps1 <<<<

Vill man starta skriptet från en kommand prompt så skriver man PowerShell ./helloworld.ps1.

Läs mer:

Microsofts PowerShell sida

http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx

PowerShell Team Blog

http://blogs.msdn.com/PowerShell/

Information om PowerShell i Longhorn från och med Beta 3:

Announced- PowerShell to Ship in Windows Server (Longhorn)!!!!

Bra editor med stöd för PowerShell formatering och syntax:

http://www.primalscript.com


 

Andra (Bloggar.se) skriver om: , ,
No Comments
read more
posted 18/06/06

Mappa enheter efter grupptillhörighet

By Fredrik Wall
flagse 
Här kommer nästa subrutin som kollar i AD grupper och utför något efter det.
Denna mappar upp enheter.
 
 
 
Sub MapDriveWithGroup(sLetter, sNetshare, sGroup)
‘ Namn: MapDriveWithGroup
‘ Skriven Av: Fredrik Wall, fredrik.wall@edsbacka.net, http://itbloggen.se/cs/blogs/dalle

‘ Syfte: Koppla upp nätverksenhet efter grupptillhörighet
‘ Användning: MapDriveWithGroup "X:","\\server\share","grupp"
‘ Kommentar: Funkar i Win2000/2003 ActiveDirectory

On Error Resume Next

Dim WshNetwork, objADSysInfo, objUser, objGroup
Dim strUser, strGroup

Set WshNetwork = CreateObject(“WScript.Network”)
Set objADSysInfo = CreateObject(“ADSystemInfo”)

strUser = objADSysInfo.UserName

Set objUser = GetObject(“LDAP://” & strUser)

For Each strGroup in objUser.memberOf
 
  Set objGroup = GetObject(“LDAP://” & strGroup)

If LCase(objGroup.CN) = LCase(sGroup) Then
   WshNetwork.RemoveNetworkDrive sLetter
   WshNetwork.MapNetworkDrive sLetter , sNetShare
End If
 
Next
End Sub

 

Andra (Bloggar.se) skriver om: , ,
No Comments
read more
posted 14/06/06

Tech Ed 2006 – Webcast Series – Scripting

By Fredrik Wall

flagse 

Scripting Secrets of Exchange Server 2003 (Level 300)
Exchange Server 2007 Management Shell and Scripting (Level 300)

 


Technorati-taggar: ,,

Andra (Bloggar.se) skriver om: , ,
No Comments
read more
posted 14/06/06

Webcasts om skriptning

By Fredrik Wall

flagse 

Då jag är en skript geek så har jag försökt att hitta webcasts om detta.
Inte en högprioriterad sak hos Microsoft eller hos någon annan heller.

Men här kommer några som jag hittat:

 

Technorati-taggar: ,

Andra (Bloggar.se) skriver om: ,
No Comments
read more
posted 14/06/06

Mappa skrivare efter grupptillhörighet

By Fredrik Wall

flagse

Många av de skriptfrågor som jag får handlar om grupptillhörighet och skrivare i AD.
Därför har jag skapat en liten subrutin som sköter detta.

Liten men väldigt smidig!

 

 

Sub AddPrinterWithGroup(sPrinter, sGroup)
‘ Namn: MapDriveWithGroup
‘ Skriven Av: Fredrik Wall
‘ Syfte: Koppla upp nätverksskrivare efter grupptillhörighet
‘ Användning: AddPrinterWithGroup "
\\printerserver\skrivarkö","grupp"
‘ Kommentar: Funkar i Win2000/2003 ActiveDirectory
On Error Resume Next

Dim WshNetwork, objADSysInfo, objUser, objGroup
Dim strUser, strGroup

Set WshNetwork = CreateObject("WScript.Network")
Set objADSysInfo = CreateObject("ADSystemInfo")

strUser = objADSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUser)
For Each strGroup in objUser.memberOf

Set objGroup = GetObject("LDAP://" & strGroup)

If LCase(objGroup.CN) = LCase(sGroup) Then
  WshNetwork.RemovePrinterConnection sPrinter
  WshNetwork.AddWindowsPrinterConnection sPrinter
End If

Next
End Sub

 

Andra (Bloggar.se) skriver om: , ,
No Comments
read more