PowerShell script για μαζική αντικατάσταση λέξεων σε κείμενο


PowerShell script για μαζική επεξεργασία κειμένου: Οι επεξεργαστές κειμένου όπως το Notepad και το Notepad ++ χρησιμοποιούνται για τη δημιουργία πολλών διαφορετικών τύπων αρχείων όπως αρχεία καταγραφής, scripts, αρχεία PowerShell και πολλά άλλα. PowerShell

Εφόσον ο επεξεργαστής κειμένου που χρησιμοποιείτε μπορεί να δημιουργήσει αυτά τα αρχεία, μπορεί και να τα επεξεργαστεί. Αν έχετε όμως πολλά αρχεία κειμένου και πρέπει να αντικαταστήσετε μια μερικές λέξεις σε όλα, τότε μπορείτε να το κάνετε με ένα PοwerShell script.

Το script θα το κάνει, χωρίς να χρειάζεται να ανοίξετε κάθε αρχείο ξεχωριστά για να αντικαταστήσετε τη λέξη. Ας δούμε πως μπορείτε να το κάνετε.

Μπορείτε να χρησιμοποιήσετε το ίδιο script σχεδόν για άλλους τους τύπους αρχείων που μπορούν να δημιουργηθούν με ένα πρόγραμμα επεξεργασίας κειμένου.

Αρχικά θα πρέπει να τοποθετήσετε όλα τα αρχεία κειμένου που θέλετε να επεξεργαστείτε στον ίδιο φάκελο. Το script θα ελέγξει μόνο έναν φάκελο και όχι ολόκληρο το σύστημά σας.

Πολλές φορές μέσα από αυτή τη σελίδα έχουμε αναφέρει την δωρεάν εφαρμογή επεξεργασίας κειμένου Notepad++. Μπορείτε να κατεβάσετε και να χρησιμοποιήσετε την εφαρμογή. Δημιουργήστε ένα νέο αρχείο, αντιγράψτε και επικολλήστε το παρακάτω κείμενο:

Get-ChildItem 'διαδρομή-φακέλου\*.txt' -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace 'αρχική-λέξη', 'νέα-λέξη' }) |
Set-Content $_
}

Θα πρέπει να επεξεργαστείτε το παραπάνω script. Αλλάξτε το “διαδρομή-φακέλου” με την πραγματική διαδρομή προς το φάκελο που περιέχει τα αρχεία κειμένου που συγκεντρώσατε για να επεξεργαστείτε.

Μετά θα πρέπει να αντικαταστήστε το ‘αρχική-λέξη’ με τη λέξη που θέλετε να αντικαταστήσετε. Τέλος, αλλάξτε το “νέα-λέξη” και προσθέστε τη λέξη που θέλετε να αντικαταστήσει την παλιά.

Για παράδειγμα, έχω μερικά αρχεία κειμένου που έχουν τη λέξη ‘Δημοσίευση’ και θέλω να αντικαταστήσω τη λέξη δημοσίευση με τη λέξη άρθρο. Δείτε πως μετέτρεψα το παραπάνω script:

 Get-ChildItem 'C:\Users\iguru\Desktop\files\*.txt' -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace 'δημοσίευση', 'άρθρο' }) |
Set-Content $_
}

Μόλις τελειώσετε με την μετατροπή αποθηκεύστε το κείμενό σας με την επέκταση αρχείου ps1. Στην εφαρμογή Notepad++ πριν την αποθήκευση βεβαιωθείτε ότι έχετε αλλάξει τον τύπο αρχείου. Τρέξτε το script και τα αρχεία σας θα αλλάξουν.

Εάν θέλετε να χρησιμοποιήσετε το ίδιο script για άλλα αρχεία εκτός των αρχείων .txt, αλλάξτε την επέκταση αρχείου στην πρώτη γραμμή. Για παράδειγμα,

το C:\Users\iguru\Desktop\files\*.txt
θα πρέπει να γίνει
C:\Users\iguru\Desktop\files\*.xml

Προειδοποίηση: Το script δεν αναγνωρίζει τις λέξεις. Αν θέλετε να αντικαταστήσετε τη λέξη the με το a, αντικαταστήσει το ‘the’ όπου το βρει. Ας πούμε στην αρχή της λέξης theme.

_____________________________________________


Διαβάστε τις Τεχνολογικές Ειδήσεις από όλο τον κόσμο, με την εγκυρότητα του iGuRu.gr

Ακολουθήσετε μας στο Google News iGuRu.gr at Google news