Benutzer mit den meisten Antworten
Variable in Copy-item verwenden

Frage
-
hallo zusammen
eigentlich zwei Fragen: wie kann man Variable oder auch die typischen %USERPROFILE%\Desktop in copy befehlen verwenden?
get-date (Powershell Objekt) geht zb. auch nicht auch nicht mit get-date.tostring()
$a = (get-date -Format YYYYMMDD) $a = a$ + ".txt" Copy-Item c:\temp\test.txt -Destination $a
CH
- Bearbeitet -- Chris -- Mittwoch, 7. Dezember 2016 12:38
Antworten
-
Moin Chris,
meintest du etwas wie "Env:\USERPROFILE"
ich baue mir meine Get-Dates immer wie folgt:
hier allerdings mit CSV als beispiel.
$date = Get-Date -Format "yyyy-MM-dd" $FileName = "$Date" + "_" + "$Tablename" + ".csv" #Export table in csv file $Table.Tables[$TableName] | export-csv -Path "\\Server\Reports$\$Filename" -delimiter ";" -NoTypeInformation -encoding UTF8
Gruß
Carsten
Wenn Dir eine Antwort weiter geholfen hat dann markiere sie doch bitte als Antwort! LG Carsten
- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
Hallo,
bei den Get-Date Formatangaben spiel das Gross-/Kleinschreiben eine Rolle.
Clickget-date -Format 'yyyyMMdd'
Und das Userprofil solltest Du besser so ermitteln:
$env:USERPROFILE
Beste Gruesse
brima
- Bearbeitet brima Mittwoch, 7. Dezember 2016 12:59
- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
In Powershell kannst Du auf Variablen über den entsprechenden Provider, wie auf das Dateisystem zugreifen. Ein
Get-ChildItem Variable:
listet Dir also alle gerade existierenden Variablen auf. Und ein
Get-ChildItem ENV:
listet Dir alle Umgebungsvariablen auf (... kommt von Environment).
Und
(Get-Date).ToString()
funktioniert. Bringt aber ohne Weiteres nicht das Ergebnis, was Du erwartest. ;-)
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
Hallo Chris,
Augen aufmachen. :-)
Falsch:
$a = 'Test'
$a = a$ + ".txt"Richtig:
$a = 'Test'
$a = $a + ".txt"also $a nicht a$
oder noch kürzer
$a = 'Test'
$a += ".txt"Beste Gruesse
brima- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:23
- Bearbeitet brima Mittwoch, 7. Dezember 2016 13:24
Alle Antworten
-
Moin Chris,
meintest du etwas wie "Env:\USERPROFILE"
ich baue mir meine Get-Dates immer wie folgt:
hier allerdings mit CSV als beispiel.
$date = Get-Date -Format "yyyy-MM-dd" $FileName = "$Date" + "_" + "$Tablename" + ".csv" #Export table in csv file $Table.Tables[$TableName] | export-csv -Path "\\Server\Reports$\$Filename" -delimiter ";" -NoTypeInformation -encoding UTF8
Gruß
Carsten
Wenn Dir eine Antwort weiter geholfen hat dann markiere sie doch bitte als Antwort! LG Carsten
- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
Hallo,
bei den Get-Date Formatangaben spiel das Gross-/Kleinschreiben eine Rolle.
Clickget-date -Format 'yyyyMMdd'
Und das Userprofil solltest Du besser so ermitteln:
$env:USERPROFILE
Beste Gruesse
brima
- Bearbeitet brima Mittwoch, 7. Dezember 2016 12:59
- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
In Powershell kannst Du auf Variablen über den entsprechenden Provider, wie auf das Dateisystem zugreifen. Ein
Get-ChildItem Variable:
listet Dir also alle gerade existierenden Variablen auf. Und ein
Get-ChildItem ENV:
listet Dir alle Umgebungsvariablen auf (... kommt von Environment).
Und
(Get-Date).ToString()
funktioniert. Bringt aber ohne Weiteres nicht das Ergebnis, was Du erwartest. ;-)
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:10
-
Danke Carsten
dein Code hat mir sehr geholfen. Man muss auch die Variable unter Hochkomma setzen. Dann klappts.
$a = a$ + ".txt" daher ging es nicht
einmal so einmal so, das soll jemand verstehen
das geht zum Beispiel ohne Hochkomma in einem andere Codebeispiel. Hat jetzt nicht mit copy zu tun, aber man sieht, dass Variable mit String verbunden werden.
$UserID + "," + $path >> $FileName
CH
-
Hallo Chris,
Augen aufmachen. :-)
Falsch:
$a = 'Test'
$a = a$ + ".txt"Richtig:
$a = 'Test'
$a = $a + ".txt"also $a nicht a$
oder noch kürzer
$a = 'Test'
$a += ".txt"Beste Gruesse
brima- Als Antwort markiert -- Chris -- Mittwoch, 7. Dezember 2016 13:23
- Bearbeitet brima Mittwoch, 7. Dezember 2016 13:24