Kā izmantot PowerShell, lai rakstītu teksta failā

2021. gada 3. jūnijs 102357 Skati

Šī S zona iemāca dažādus veidus, kā izmantot PowerShell, lai rakstītu failā.





Rokasgrāmata sākas ar dažādu PowerShell cmdlet diskusiju, ko izmanto izvades ierakstīšanai failā. Sadaļa aptver Ārpus fails , Add-Content un Set-Content cmdlet ar piemēriem.



Pēc tam otrajā sadaļā jūs uzzināsit, kā izmantot dažādus PowerShell Metodes lai manipulētu ar rakstīšanu un atjaunināšanu teksta failā.

Visbeidzot, pēdējā sadaļa aptver visus iespējamos izvades rakstīšanas piemērus teksta failos programmā PowerShell. Piemēri svārstās no vienkārša piemēra, piemēram, teksta failu pārrakstīšanas, līdz uzlabotiem piemēriem, piemēram, manipulācijām ar failu kodējumu.



Ja meklējat konkrētu piemēru, tālāk izvērsiet vienumu Pārlūkot ziņu tēmas un noklikšķiniet uz tēmas.



Rokasgrāmatā ir sadaļa FAQ ar īsām atbildēm uz bieži uzdotajiem jautājumiem par PowerShell izmantošanu, lai rakstītu izvadi teksta failā.

Pārlūkojiet ziņu tēmas

PowerShell cmdlet, ko izmantoja teksta failu rakstīšanai vai atjaunināšanai

PowerShell cmdlets teksta failu rakstīšanai vai atjaunināšanai

Šajā sadaļā ir aprakstītas četras PowerShell cmdlet, ko izmanto teksta failu rakstīšanai, atjaunināšanai vai aizstāšanai. Katrā šīs sadaļas apakšsadaļā jūs uzzināsit, kā lietot Ārpus fails , Satura pievienošana , un Komplekts-Saturs .



Kā rakstīt PowerShell izvadi teksta failā, izmantojot Ārpus fails

Izvades ierakstīšana teksta failā ir tikpat vienkārša kā pirmās komandas izvades ievadīšana Ārpus fails un norādiet ceļu uz teksta failu.



Pirmajā piemērā es ievadīšu tekstu PowerShell uzvednē, pēc tam ievadīšu to uz Ārpus fails .

|_+_| Ja fails neeksistē, Out-File to izveidos norādītajā ceļā FilePath parametrs.

Komanda tiks izpildīta un atgriezīsies PowerShell uzvednē.

Kā izmantot Out-File programmā PowerShell, lai rakstītu vai pievienotu failam

Šeit ir fails, kas izveidots norādītajā ceļā. Otrais attēls ir teksta faila saturs.

Kā izmantot Out-File programmā PowerShell, lai rakstītu vai pievienotu failam

Varat izmantot šo metodi, lai teksta failā ierakstītu jebkuras PowerShell komandas izvadi.

Šajā otrajā piemērā es ierakstīšu Get-Process izvadi teksta failā. Šeit ir komanda:

|_+_|

Komanda izpildīs un izveidos process.txt failu. Izvade ir parādīta otrajā attēlā zemāk:

Kā pievienot PowerShell izvadi esošam teksta failam ar Ārpus fails

Vēl viens veids, kā izmantot PowerShell, lai rakstītu failā, ir pievienot (pievienot vairāk satura) esošam teksta failam ar noteiktu saturu.

Pēc pirmā piemēra tālāk norādītā komanda faila apakšdaļai (first-file.txt) pievienos (pievienos) informāciju pirms konveijera (|).

|_+_|

Tagad failam ir otrā rindiņa ar tekstu This tiks pievienots zem pirmās rindas. Skatīt attēlu zemāk.

Kā izmantot Satura pievienošana Programmā PowerShell, lai pievienotu teksta failam

Varat arī izmantot PowerShell, lai rakstītu failā, pievienojot esošam teksta failam ar Satura pievienošana Cmdlet.

Lai pievienotu Tas tiks pievienots zem otrās rindas esošajam failam first-file.txt, ievadiet šo komandu un nospiediet taustiņu Enter.

|_+_|

Tagad failam būs trešā rindiņa ar tekstu This tiks pievienots zem otrās rindiņas. Skatīt attēlu zemāk:

Pēdējā piemērā es pievienošu (uzrakstīšu) izvadi Get-Process Cmdlet failam process.txt, kas izveidots failā Ārpus fails piemērs.

Šajā piemērā es izpildīšu tālāk norādītās komandas:

|_+_| |_+_|

Pirmā komanda saglabā izvadi Get-Process iekš Process mainīgs. Otrā komanda pievieno mainīgā izvadi failam process.txt.

Varat izmantot kādu no šajā S zonā aprakstītajām metodēm, lai rakstītu failā (vai pievienotu esošam failam) ar PowerShell!

kā palielināt fov nokrišņos 4

Kā izmantot Komplekts-Saturs Programmā PowerShell, lai rakstītu teksta failā

Līdz šim šajā sadaļā es jums parādīju, kā to izmantot Ārpus fails lai rakstītu teksta failā. Jūs arī redzējāt, kā izmantot to pašu Cmdlet, lai pievienotu teksta failu.

Visbeidzot, pēdējā apakšsadaļā es parādīju, kā izmantot Satura pievienošana lai teksta failam pievienotu izvadi.

Šī apakšnodaļa ievada Komplekts-Saturs . Viena atšķirība starp šo Cmdlet un pārējām 2 jau apspriestajām ir tā, ka kamēr Ārpus fails un Satura pievienošana var pievienot saturu teksta failam, Komplekts-Saturs pārraksta saturu.

Tātad tālāk esošā komanda pārraksta faila saturu ar jaunu saturu, kas norādīts failā Vērtība parametrs.

|_+_|

Šeit ir teksta fails — viss tā iepriekšējais saturs ir aizstāts!

PowerShell teksta fails Metodes Izmanto, lai rakstītu vai atjauninātu teksta failus

Kā rakstīt teksta failā, izmantojot PowerShell teksta failu metodes

Šīs rokasgrāmatas pirmajā sadaļā tika apskatītas dažādas PowerShell cmdlet, ko izmanto, lai rakstītu izvadi teksta failos. Šajā sadaļā jūs uzzināsit, kā veikt tos pašus uzdevumus ar PowerShell teksta failu Metodes .

Sadaļa sākas, mācot jums atrast pieejamo teksta failu Metodes . Pēc tam nākamajās apakšsadaļās jūs uzzināsit, kā izmantot šīs PowerShell Metodes lai rakstītu, atjauninātu un pārrakstītu satura teksta failus.

Es izmantošu teksta failu zemāk esošajā ekrānuzņēmumā, lai izskaidrotu, kā atrast PowerShell Metodes pieejams, kad uzskaitāt teksta failu ar Get-Content Cmdlet. Turklāt es izmantošu šo teksta failu piemēriem visās šīs sadaļas apakšsadaļās.

Kā atrast PowerShell teksta failu metodes

Lai redzētu visu sarakstu Metodes un Operatori ir pieejams teksta failā, izvadiet faila izvadi Get-Content komanda uz Piesakies dalībai .

Šeit ir komandas paraugs…

|_+_|

Komandā ir norādīts PowerShell kopums Metodes . Tomēr šīs rokasgrāmatas nolūkos mani interesē sekojošais Metodes :

  • Ievietot
  • Noņemt
  • Aizvietot

Turklāt es izmantošu arī IndexOf Metode manās ilustrācijās. Es šos esmu izcēlis Metodes pēdējās komandas rezultātā…

Nākamajās apakšsadaļās jūs uzzināsit, kā izmantot šīs PowerShell Metodes pieejams, kad uzskaitāt teksta failu ar Get-Content Cmdlet.

android izslēgt sadalīto ekrānu

Kā lietot PowerShell Ievietot Virkņu pievienošanas metode esošajam teksta failam

PowerShell vispārējā sintakse Ievietot Metode ir…

|_+_|

The sākuma indekss ir pirmā rakstzīme apakšvirknei, pirms kuras vēlamies ievietot tekstu. Turklāt, virknes vērtība ir teksts, kuru vēlaties ievietot.

Viens vienkāršs veids, kā noteikt startIndex ir aprēķināt IndexOf virknes vērtība, ap kuru vēlaties ievietot tekstu.

Es zinu, ka lielākā daļa no tā, ko esmu teicis, jums var izklausīties kā grieķu valoda! Tātad, ļaujiet man paskaidrot ar piemēru manā teksta failā.

Lai sāktu, es vēlos saglabāt ceļu uz manu failu mainīgajā. Tas man atvieglos atjauninātā satura saglabāšanu vēlāk.

|_+_|

Tālāk es izmantošu Get-Content komandu, lai uzskaitītu teksta faila saturu. Pēc tam saglabājiet rezultātu citā mainīgajā…

|_+_|

Pirms pārietu uz nākamo darbību, ļaujiet man atjaunot PowerShell sintaksi Ievietot Metode…

|_+_|

Kā jau minēju iepriekš, vienkāršākais veids, kā noteikt startIndex – vieta teksta failā, kurā vēlamies ievietot tekstu – ir izmantot IndexOf Metode .

Šajā piemērā es vēlos ievietot vārdu pirms pārrakstīšanas…

Kā izmantot PowerShell ievietošanas metodi, lai esošajam teksta failam pievienotu tekstu

Pirmais solis ir noteikt IndexOf pārrakstīšanas vērtība. Tālāk esošā komanda veic darbu…

|_+_|

Rezultāts ir 10.

Paturiet prātā, ka šī IndexOf no 10 ir tieši vārda pirmās rakstzīmes sākumā, pārrakstīt.

Paturot to prātā, ja vēlos ievietot virkni (tekstu, ciparus, rakstzīmes — jebko), pirms pārrakstīšanas es izmantošu 10 kā startIndex .

Turklāt, ja vēlos kaut ko ievietot virknes beigās, pārrakstīt, es saskaitīšu rakstzīmju skaitu no pirmās rakstzīmes - šajā gadījumā o - līdz virknes beigām, pārrakstīt - tas būs18

Ņemiet vērā, ka arī atstarpes tiek uzskatītas par rakstzīmēm.

Bet šī piemēra nolūkā es vēlos ievietot vārdu pirms pārrakstīšanas…

Kā izmantot PowerShell ievietošanas metodi, lai esošajam teksta failam pievienotu tekstu

Šī ir komanda, kas veic šo burvību…

|_+_| Pēc tam pievienoju atstarpi, lai starp not un pārrakstīt izveidotu atstarpi.

Komandā, 10 ir startIndex , ir virknes vērtība . Šī komanda ievēro tālāk norādītās ievietošanas metodes sintakse…

|_+_|

Un šeit ir PowerShell pēdējās komandas rezultāts. Rezultātā ir iekļauts mūsu ievietotais vārds!

Bet mēs vēl neesam pabeiguši. Pēdējais solis ir ierakstīt šo vērtību tajā pašā teksta failā.

Lai to izdarītu, mums ir jāizmanto Komplekts-Saturs komandu. Ja atceraties, pēdējā sadaļā es minēju, ka atšķirībā no pārējām 2 cmdlet, kuras es apspriedu šajā sadaļā, Komplekts-Saturs pārraksta teksta faila saturu.

Tātad, lai rakstītu pēdējās PowerShell komandas izvadi tajā pašā teksta failā, palaidiet tālāk norādīto komandu...

|_+_|

Kad es palaižu šo pēdējo komandu un atveru savu teksta failu, vārds, not tagad ir daļa no teksta faila virknēm!

Kā izmantot PowerShell ievietošanas metodi, lai esošajam teksta failam pievienotu tekstu

Kā lietot PowerShell Noņemt Virkņu dzēšanas metode esošā teksta failā

Iepazīstinot ar šo sadaļu, es minēju, ka sniegšu piemērus ar PowerShell Noņemt Metode. Šajā apakšsadaļā jūs uzzināsit, kā izmantot šo PowerShell metodi, lai dzēstu virknes no teksta faila.

Sāksim ar sintaksi Noņemt Metode:

|_+_| |_+_|

Pirmajā sintaksē jūs vienkārši norādiet startIndex . Turklāt otrajā sintaksē ir jānorāda startIndex un skaitīt .

Kā es paskaidroju pēdējā apakšsadaļā, jūs varat iegūt startIndex aprēķinot IndexOf no sintakses, kuru vēlaties noņemt.

Turklāt otrajai sintaksei skaitīt ir rakstzīmju skaits – no startIndex – vēlaties noņemt.

Tātad, pieņemsim, ka mēs vēlamies noņemt virkni, nevis pievienot mūsu teksta failam pēdējā apakšsadaļā. Pirmais solis ir noteikt IndexOf virknes pirmās rakstzīmes, nevis.

Turpinot no piemēriem pēdējā apakšsadaļā, trešā komanda tālāk noteiks IndexOf vērtība:

|_+_|

Rezultāts ir 10…

Kā izmantot PowerShell noņemšanas metodi, lai dzēstu virknes esošā teksta failā

Turpinot, lai noņemtu virkni, mēs izmantosim otro sintaksi Noņemt Metode.

|_+_|

Manā piemērā, startIndex ir 10. Iepriekš es paskaidroju, ka skaitīt ir rakstzīmju skaits – no startIndex – vēlaties noņemt.

Tātad, mēs vēlamies noņemt virkni, nevis — kas ir 3 rakstzīmes no startIndex . Tāpēc, skaitīt ir 3.

Pamatojoties uz šo informāciju, tālāk norādītā komanda noņems virkni, nevis no mūsu teksta faila.

|_+_|

Šeit ir rezultāts…

Uzmanīgi aplūkojot rezultātu, pamanīsit, ka starp gribu un pārrakstīšanu ir dubultā atstarpe. Lai noņemtu kādu no atstarpēm, izveidojiet skaitīt 4…

|_+_|

Tagad vietas vairs nav!

Kā izmantot PowerShell noņemšanas metodi, lai dzēstu virknes esošā teksta failā

Visbeidzot, izmantojiet tālāk esošo komandu PowerShell, lai failā ierakstītu atjaunināto tekstu…

|_+_|

Pēc komandas palaišanas fails tiek atjaunināts bez virknes, nevis. Skatiet zemāk redzamos ekrānuzņēmumus…

Kā lietot PowerShell Aizvietot Virknes aizstāšanas metode teksta failā

Šīs sadaļas pēdējās 2 apakšsadaļās es jums iemācīju, kā lietot Ievietot un Noņemt PowerShell metodes rakstīšanai teksta failā.

Šajā pēdējā apakšsadaļā jūs uzzināsit, kā aizstāt virkni ar citu virkni. Kā parasti, sāksim ar sintaksi Aizvietot Metode:

|_+_|

Atšķirībā no pārējām 2 metodēm, kas jums ir jānosaka sākuma indekss , vai skaitīt , Aizvietot Metode nav. Viss, kas jums nepieciešams, lai aizstātu virkni, ir norādīt virkni, kuru vēlaties aizstāt, un pēc tam norādiet jauno virkni.

Lai ilustrētu ar piemēru, atgriezīsimies pie mūsu teksta faila. Šajā piemērā es vēlos aizstāt virkni, pārrakstīt ar pārrakstīt...

Trešā tālāk norādītā komanda veiks darbu. Es atkal ieviesu pirmās divas komandas, lai mainīgajos varētu iegūt atjaunināto teksta faila versiju.

Turklāt pēdējā PowerShell komanda ieraksta atjaunināto izvadi tajā pašā teksta failā…

|_+_|

Pēc komandu izpildes teksta fails tiks atjaunināts. Skatiet zemāk redzamo ekrānuzņēmumu…

Kā izmantot PowerShell novirzīšanas operatorus, lai pievienotu teksta failam

Windows PowerShell ir komplekts novirzīšanas operatori . Varat izmantot divus no šiem novirzīšanas operatoriem, lai rakstītu vai atjauninātu teksta failus programmā PowerShell.

Es apzinos, ka novirzīšanas operatori neietilpst šajā sadaļā par rakstīšanu teksta failā, izmantojot PowerShell metodes. Tomēr šī ir vienīgā loģiskā sadaļa, ko varu iekļaut šo tēmu.

Lai izveidotu jaunu teksta failu un rakstītu tajā, izmantojiet > pāradresācijas operatoru. Ja izmantojat šo operatoru, lai rakstītu PowerShell straumi teksta failā, tas pārraksta teksta faila saturu.

Tomēr, ja vēlaties atjaunināt teksta failu, nepārrakstot tā saturu, izmantojiet >> novirzīšanas operatoru.

kas ir dzīvā viļņa antena

Lai ilustrētu šo operatoru darbību, palaidiet šādas komandas.

|_+_| |_+_|

Pirmā komanda izveido teksta failu, E: eportsRedirectExample.txt . Pēc tam teksta failā ieraksta novirzīšanu.

Turklāt otrā komanda tam pašam teksta failam pievieno 2. novirzīšanas rindiņu. Šeit ir PowerShell komandas un teksta faila ekrānuzņēmums.

Kā izmantot PowerShell novirzīšanas operatorus, lai pievienotu teksta failam

PowerShell rakstīšanas teksta failā piemēri

PowerShell rakstīšanas teksta failā piemēri

Šajā pēdējā sadaļā es dalīšos ar vairākiem piemēriem, lai rakstītu teksta failā programmā PowerShell. Piemēros es izmantošu prasmes, kas aprakstītas šīs rokasgrāmatas pirmajās divās sadaļās.

Kā rakstīt PowerShell izvadi teksta failā un pārrakstīt to

Ir trīs veidi, kā pārrakstīt teksta faila saturu. Pirmkārt, ja palaižat Ārpus fails komanda bez Pievienot parametru, tas pārrakstīs teksta faila saturu.

Turklāt teksta faila saturu var pārrakstīt ar Komplekts-Saturs komandu. Visbeidzot, jūs varat izmantot > pāradresācijas operators, lai pārrakstītu teksta saturu.

Lai sniegtu dažus piemērus, tālāk esošās komandas pārrakstīs teksta faila saturu, E: eportsoverwrite.txt :

|_+_|

Tālāk esošajā ekrānuzņēmumā ir redzamas komandas un teksta faila galīgais saturs.

Kā rakstīt PowerShell izvadi teksta failā un konsolē

Ja vēlaties rakstīt PowerShell izvadi teksta failā un parādīt izvadi arī konsolē, varat izmantot vienu no šīm divām cmdlet — Satura pievienošana vai Komplekts-Saturs .

Abām cmdlet ir parametrs, ko sauc PassThru . Ja jūs izmantojat PassThru parametrs, PowerShell ieraksta izvadi norādītajā teksta faila ceļā; pēc tam parāda to arī konsolei.

Tomēr izmantotā Cmdlet ir atkarīga no tā, vai vēlaties pievienot teksta failam vai pārrakstīt teksta faila saturu. Lai pievienotu teksta failam, izmantojiet Satura pievienošana .

Tomēr, ja plānojat pārrakstīt teksta faila saturu, izmantojiet Komplekts-Saturs . Es ilustrēšu ar diviem piemēriem.

Lai pievienotu teikumu, tas tiek pievienots ar Satura pievienošana , uz norādīto teksta failu un parādiet ziņojumu konsolē, palaidiet tālāk norādīto komandu:

|_+_|

Tālāk esošajā ekrānuzņēmumā ir parādīts komandas rezultāts programmā PowerShell un teksta faila izvade.

Kā rakstīt PowerShell izvadi teksta failā un konsolē

Gluži pretēji, lai pārrakstītu teksta faila saturu un rakstītu izvadi arī konsolei, izmantojiet tālāk norādīto komandu...

|_+_|

Visbeidzot, šeit ir PowerShell komandas izvade, kas tiek parādīta konsolē un arī ierakstīta teksta failā. Tomēr šoreiz tas pārrakstīja teksta faila saturu.

Kā rakstīt PowerShell izvadi teksta failā bez jaunas rindiņas

Ja palaižat šo PowerShell komandu, tā vietā, lai rakstītu izvadi tajā pašā teksta faila rindiņā, tā ieraksta divas virknes, Victor un Ashiedu, divās rindās...

|_+_|

Tomēr, ja jūsu mērķis ir rakstīt abas virknes vienā rindā, jums ir jāiekļauj an Ārpus fails Cmdlet parametrs tiek izsaukts NoNewline .

|_+_|

Tagad teksta failā abas virknes ir vienā rindā! Tomēr starp abām virknēm nav atstarpes, kas šajā gadījumā ir personas vārds un uzvārds.

Kā rakstīt PowerShell izvadi teksta failā bez jaunas rindiņas

Lai starp abiem nosaukumiem iekļautu atstarpi, pirms otrās virknes Ashiedu pievienojiet atstarpi. Tālāk esošā komanda ir tāda pati kā iepriekšējā komanda, izņemot atstarpi pirms otrās virknes.

|_+_|

Šeit ir teksta fails tagad…

Ja nevēlaties pārrakstīt teksta failu, iekļaujiet Pievienot parametrs pēdējā komandā.

Kā rakstīt PowerShell izvadi teksta failā ar UTF 8 kodējumu

The Ārpus fails Cmdlet ir parametrs, ko sauc Kodēšana . Rakstot PowerShell izvadi teksta failā, varat izmantot šo parametru, lai norādītu faila kodējumu.

Turklāt, ja vēlaties mainīt esoša teksta faila kodējumu, varat izvadīt faila izvadi Get-Content komanda uz Ārpus fails .

The Kodēšana parametrs atbalsta UTF8, ASCII, UTF32 un citus. Varat norādīt jebkuru no kodēšanas veidiem.

Tātad, tā kā šī apakšsadaļa ir par PowerShell izvades rakstīšanu teksta failā ar UTF8 kodējumu, šeit ir komandu piemēri, kas var to sasniegt…

|_+_| |_+_|

Pirmā komanda ieraksta izvadi teksta failā ar UTF8 kodējumu.

Turklāt otrā komanda importē teksta faila saturu programmā PowerShell ar Get-Content . Pēc tam ieraksta to pašu saturu citā teksta failā ar UTF8 kodējumu.

Kā novērst PowerShell Write to File Denied kļūdu

Dažreiz, mēģinot rakstīt PowerShell izvadi teksta failā, var tikt parādīts kļūdas ziņojums par piekļuvi liegta. Šo kļūdu var izraisīt vairāki iemesli.

Viens no iemesliem, kāpēc jūs varat saņemt piekļuves liegtas kļūdas ziņojumu, ir, ja mēģināt rakstīt atvērtā teksta failā. Turklāt, ja mēģināt rakstīt teksta failā, ko izmanto cits Windows process, var tikt parādīts kļūdas ziņojums par piekļuvi liegta.

Vēl viens iemesls, kāpēc var tikt parādīta piekļuve liegta kļūda, ir tas, ka mēģināt izveidot teksta failu ar neatbalstītu rakstzīmi. Piemēram, ja mēģināt izveidot teksta failu, kura nosaukumā ir /, var tikt parādīts kļūdas ziņojums par piekļuvi liegta.

Visbeidzot, ja teksta failam ir tikai lasāms atribūts, jūs saņemsit arī kļūdas ziņojumu piekļuve liegta.

Tātad šīs problēmas risinājums ir noteikt kļūdas ziņojuma iemeslu. Pēc tam veiciet izmaiņas.

Nākamajā apakšsadaļā es jums iemācīšu, kā rakstīt PowerShell izvadi teksta failā, kuram ir tikai lasāms atribūts.

Kā izmantot PowerShell, lai rakstītu tikai lasāmā teksta failā

Ja mēģināsit rakstīt PowerShell izvadi tikai lasāmā teksta failā, tiks parādīts kļūdas ziņojums par piekļuvi liegta. Lai to pārbaudītu, vienam no iepriekš izveidotajiem teksta failiem esmu iespējojis tikai lasāmo.

pievienot Windows spēli tvaikam
Kā izmantot PowerShell, lai rakstītu tikai lasāmā teksta failā

Tagad, ja mēģināšu rakstīt teksta failā ar tālāk norādīto komandu, es saņemšu kļūdas ziņojumu piekļuve liegta.

|_+_|

Labā ziņa ir tā, ka visām PowerShell komandām, kuras var rakstīt teksta failā, ir parametrs, ko sauc Spēks . Ja iekļaujat šo komandu Ārpus fails , Komplekts-Saturs , vai Satura pievienošana , varat rakstīt tikai lasāmā teksta failā.

Piemēram, ja mēs modificējam pēdējo komandu, kā parādīts zemāk, komanda neatgriezīs kļūdas ziņojumu.

|_+_|

Šoreiz komanda ir veiksmīga un teksta fails ir atjaunināts!

Kā izmantot PowerShell, lai rakstītu tikai lasāmā teksta failā

Kā rakstīt PowerShell izvadi teksta failā un izveidot mapi, ja tā neeksistē

Pēc noklusējuma, ja palaižat Ārpus fails , Komplekts-Saturs , vai Satura pievienošana komandas un norādiet ceļu uz teksta failu, kas neeksistē, fails tiks izveidots.

Tomēr, ja norādītajā ceļā ir mape, kas neeksistē, tiks parādīts kļūdas ziņojums. Lai to pārbaudītu, es izpildīšu tālāk norādīto komandu, kas ietver mapi, NoNewline - šī mape norādītajā ceļā nepastāv…

|_+_|

Komanda atgriež kļūdas ziņojumu.

Lai novērstu šo problēmu, izmantojiet komandu Test-Path, lai pārbaudītu, vai ceļš pastāv. Pēc tam, ja tā neeksistē, izmantojiet Jaunums komandu, lai to izveidotu pirms palaišanas Ārpus fails komandu.

Šeit ir atjauninātais skripts. Pēdējā rindiņa ir jaunākā komanda šajā rokasgrāmatā…

|_+_| The Spēks parametrs ir tas, kas liek Jaunums lai izveidotu visas mapes, kas ceļā nepastāv.

Lai palaistu skriptu, kopējiet to jaunā PowerShell ISE dokumentā un palaidiet to. Pirms skripta palaišanas tālāk redzamajā ekrānuzņēmumā redzams, ka mape neeksistē…

Kā rakstīt PowerShell izvadi teksta failā un izveidot mapi, ja tā neeksistē

Pēc skripta palaišanas mape tagad pastāv ceļā…

Visbeidzot, ja atverat NoNewline mapē, jūs atradīsit tekstu, nonewline.txt .

Kā izmantot PowerShell savienošanu, lai rakstītu teksta failā

Varat izmantot PowerShell, lai apvienotu divu teksta failu saturu vienā teksta failā. Divu teksta failu savienošanas procesu vienā sauc par apvienošanu.

Lai sniegtu piemēru, es izveidoju divus failus, Processfile1.txt un Processfile2.txt . Tad es izmantoju Get-Content lai savienotu failus.

Visbeidzot, es izvadu rezultātu Get-Content uz Komplekts-Saturs un ierakstiet apvienotos failus vienā failā. Šeit ir komandas…

|_+_|

Kā izmantot PowerShell, lai teksta failā ierakstītu datuma un laika izvadi

Ir tik daudz gadījumu, kad teksta failā var būt nepieciešams ierakstīt datumu un laiku. Viens piemērs ir, ja vēlaties ģenerēt kļūdu žurnālu.

tvaiks pārsniedza atgūšanas mēģinājumus

Piemēram, ja izmantojat PowerShell skriptu, lai veiktu uzdevumu vairākos serveros, ieteicams izveidot žurnālfailu ar serveriem, ar kuriem skripts nevarēja izveidot savienojumu. Šos žurnālfailus pēc tam var izmantot problēmu novēršanai.

Turklāt, veidojot šādus žurnālfailus, ieteicams iekļaut arī datuma un laika zīmogu. Tādā veidā jūs zināt, kad skripts mēģināja izveidot savienojumu ar serveri.

Pietiek ar sarunām! Ļaujiet man parādīt, kā rakstīt datuma un laika zīmogus teksta failā, izmantojot PowerShell. Šajā piemērā man ir neesošu datoru saraksts teksta failā.

Tālāk esošajā skriptā es izmantoju Testa savienojums komanda ping datoram. Pēc tam, ja dators reaģēs, mans skripts mēģinās veikt dažus uzdevumus attālajā datorā.

Tomēr, ja Testa savienojums komanda nesaņem atbildi no attālā datora, skripts ģenerē kļūdas ziņojumu ar pašreizējo datuma un laika zīmogu.

Visbeidzot, skripti ieraksta kļūdu žurnālus ar datuma un laika zīmogiem teksta failā.

Šeit ir skripts. Detalizētu katras rindas skaidrojumu skatiet tālāk…

|_+_|

Lai palaistu skriptu, kopējiet to jaunā PowerShell ISE dokumentā un pēc tam palaidiet skriptu. Kad es palaidu skriptu, tas izveidoja failu ar nosaukumu Trešdiena, 02.06.2021.txt - Šodienas datums.

Turklāt tas izveidoja ierakstus teksta failā, Trešdiena, 02.06.2021.txt - skatiet zemāk redzamo ekrānuzņēmumu…

Lai izskaidrotu skriptu, es to nokopēju tālāk. Esmu pievienojis arī rindu numurus, lai būtu viegli uz tiem atsaukties.

|_+_|

Šeit ir šī šķietami sarežģītā PowerShell skripta sadalījums:

  1. In 1. rindiņa , es izmantoju Get-Content komanda, lai importētu manu serveru sarakstu programmā PowerShell. Serveri tiek saglabāti teksta failā – Get-Content E: eportsITGServers.txt. Visbeidzot, es saglabāju serveru saraksta rezultātu mainīgajā ar nosaukumu Serveri .
  2. Tad iekšā 2. rindiņa Es izveidoju teksta faila nosaukumu, kurā saglabāšu savus kļūdu ziņojumus. Es izmantoju Get-Date komandu, lai izveidotu teksta failu.

    10. rindiņā es rakstīšu, ka PowerShell skripts ieraksta kļūdu žurnālus teksta failā — vairāk par to vēlāk. Visbeidzot, lai vēlāk varētu izmantot šo failu skriptā, es to saglabāju mainīgajā ar nosaukumu žurnālfaila nosaukums .
  3. Skripts turpinās 3. rindiņa. Šajā rindā es iepazīstināju ar Katram Metode . Šī metode ļauj man atkārtot faila saturu, kas saglabāts mapē Serveri mainīgs.

    Ir divi svarīgi elementi Katram Metode ieviests 3. rindā – ( un {. Pirmā sākuma iekava, ( atver Katram Metode . Turklāt iekava { atver Katram komandu paziņojuma bloks.
  4. Tad iekšā 4. rinda , es ping katru serveri, kas saglabāts mapē Serveri mainīgs. Katra cikla laikā Katram bloka iterāciju, tas aizņem servera nosaukumu no Serveri mainīgais — saglabā to automātiskajā mainīgajā, $_ — pēc tam izmanto servera nosaukumu, kas saglabāts $_, kā datora nosaukumu ping testā.

    Vēlreiz, lai būtu viegli piekļūt ping testa rezultātam, es saglabāju rezultātu citā mainīgajā, ko sauc PingTest . Ping testa rezultāts būs vai nu Taisnība vai Nepatiesi .
  5. In 5. rindiņa , es ieviešu IF priekšrakstu bloku. Pēc tam sadaļā stāvokli bloka daļa (), katram serverim, es pārbaudu, vai ping testa rezultāts ir saglabāts PingTest mainīgais ir Taisnība vai Nepatiesi .

    Turklāt, ja ping testa rezultāts ir Taisnība , PowerShell skripts veic uzdevumu IF priekšraksta komandu blokā. IF priekšraksta komandu bloks tiek atvērts ar { iekava 5. rindā.
  6. Tad iekšā 6. rinda , es izpildu komandu IF priekšraksta blokā. In 7. rinda , es aizveru IF priekšraksta komandu bloku ar beigu iekava }.
  7. 8. rindaiepazīstina ar Citādi paziņojuma daļa IF priekšrakstu blokā. Šajā blokā es palaižu komandu, kuru vēlos palaist visos serveros, kuri ping testa atgriezās False.
  8. In 9. rinda , skripts ģenerē pašreizējo datumu un laiku. Tad tas saglabā rezultātu mainīgajā, ko sauc datuma un laika zīmogs . Skripts izmantos šo mainīgo 10. rindiņā
  9. Tad iekšā 10. rinda , PowerShell skripts ieraksta pašreizējo datuma un laika zīmogu teksta failā, ko izveidoju 2. rindā. Komanda 9. rindā ir 3 daļās.

    Pirmajā daļā skripts ģenerē daļu no kļūdas ziņojuma. Šajā daļā ir iekļauts datuma un laika zīmoga mainīgais un dažas atstarpes.

    Pēc tam komandas daļā (ziņojumā) skripts ietver faktisku ziņojumu – serveris, $_ tika izlaists, jo tas neatbildēja uz ping. Automātiskais mainīgais $_ ir tas pats mainīgais, ko ģenerē ForEaxch paziņojums iekšā 4. rinda .

    Visbeidzot, viss ziņojums tiek nosūtīts uz komandu Out-File — tā ir iekšā 11. rinda .
  10. 12. rindaaizver Citādi priekšraksta komandu bloks ar beigu iekava, }.
  11. Tad iekšā 13. rinda , skripts aizver Katram paziņojumu komandu bloks ar pulksteni un beigu iekava, }.
  12. Visbeidzot, iekšā 14. rinda , skripts aizver Katram Metode ar noslēdzošo kronšteinu, ). The Katram Metode tika atvērts 3. rindā.

Izmantojiet PowerShell, lai rakstītu teksta failā: bieži uzdotie jautājumi

Izmantojiet Powershell, lai rakstītu teksta failā: bieži uzdotie jautājumi 1. Kā nosūtīt PowerShell rezultātus uz teksta failu?

Ir 3 veidi, kā nosūtīt PowerShell rezultātus uz teksta failu.

Pirmkārt, varat izmantot operatoru > blakus rezultātam, kuru vēlaties nosūtīt uz teksta failu, kam seko atstarpe un pēc tam pilns ceļš uz teksta failu.

Turklāt varat izmantot komandu Out-File Cmdlets. Lai izmantotu Out-File, norādiet (|), PowerShell rezultāta izvadi uz Out-File, kam seko atstarpe, pēc tam pilnu ceļu uz teksta failu.

Visbeidzot, PowerShell rezultātus varat pievienot esošam teksta failam, izmantojot Add-Content. Lietošana ir līdzīga iepriekš aprakstītajai Out-File.

2. Kā saglabāt teksta failu programmā PowerShell?

Jūs varat izmantot Jaunums cmdlet, lai programmā PowerShell izveidotu jaunu teksta failu. Lai teksta failam pievienotu vienumus un to automātiski saglabātu, izmantojiet Satura pievienošana cmdlet.

3. Kā nolasīt failu programmā PowerShell?

Izmantojiet Get-Content cmdlet, lai lasītu teksta faila saturu programmā PowerShell. Piemēram, lai lasītu D: ext.txt saturu, izmantojiet komandu Get-Content D: ext.txt

Kā nolasīt failu programmā PowerShell

4. Kā jūs parādītu vērtību, kas saglabāta mainīgajā PowerShell konsolē?

Ievadiet mainīgā nosaukumu programmā PowerShell un nospiediet ievadīšanas taustiņu. Powershell mainīgajā saglabātā vērtība tiks parādīta konsolē. Piemēram, lai parādītu vērtības, kas saglabātas mapē $Saturs mainīgo, vienkārši ievadiet $Console programmā PowerShell un nospiediet ievadīšanas taustiņu.

Kā jūs parādītu vērtību, kas saglabāta mainīgajā PowerShell konsolē?

5. Kā pievienot PowerShell?

Vienkāršākais veids, kā pievienot programmā PowerShell, ir ievadīt skaitļus, atdalot tos ar saskaitīšanas zīmi (+), pēc tam nospiediet taustiņu Enter. Piemēram, lai pievienotu 2 un 5, ievadiet 2+5 , pēc tam nospiediet taustiņu Enter. Atbilde tiks parādīta konsolē.

Kā pievienot PowerShell

Tas ir viss! Mūsu atjauninātais ceļvedis ar visaptverošiem piemēriem PowerShell izvades rakstīšanai teksta failā.

Es ceru, ka šī S zona jums noderēja. Ja jums tas šķita noderīgs, lūdzu, balsojiet “Jā” uz tālāk norādīto Vai šī ziņa bija noderīga.

Varat arī uzdot jautājumu, atstāt komentāru vai sniegt atsauksmes, izmantojot veidlapu Atstājiet atbildi, kas atrodas šīs lapas beigās.

Visbeidzot, lai iegūtu vairāk PowerShell S zonu, apmeklējiet mūsu Windows PowerShell norādījumu lapu. Iespējams, jums ļoti noderēs arī mūsu lapa Work from Home.

Atsauces un turpmākā literatūra

  1. Ārpus fails
  2. Satura pievienošana
  3. Komplekts-Saturs
  4. Out-Null
  5. Get-Date
  6. about_Redirection