Necə batch RegEx istifadə edərək, Windows PowerShell ilə fayl hissəsi adını dəyişmək?
Bu misalda, biz 6 tarixi və aşağıdakı fayl ilə aşağıdakı faylları:
Mode LastWriteTime Length Adı ---- ------------- ------ ---- -bir ---- 10/06/2018 12:40 0 1 = 9.8.16 Bank Statement 298.67.pdf -a ---- 10/06/2018 12:40 0 2 = 9.9.16 Bank Statement 134.74.pdf -a ---- 10/06/2018 12:41 0 3 = 9.10.16 Bank Statement 123.43.pdf -a ---- 10/06/2018 12:41 0 4 = 9.11.16 Bank Statement 134.54.pdf -a ---- 10/06/2018 12:41 0 5 = 9.12.16 Bank Statement 157.98.pdf -a ---- 10/06/2018 12:41 0 6 = 9.1.17 Bank Statement 123.45.pdf
burada, fayl bir serial var # başında, = izlədi, "Bank bəyanatı izlədi’ bəyanat balans sonunda izlədi.
Bu fayllar fakt kredit kartı Hesabatları və sözü "Bank var’ sözləri "kredit kartı" ilə əvəz olmalıdır. fayl bütün qalan eyni qalmalıdır.
Buna nail olmaq üçün, biz Regex Windows PowerShell istifadə olunacaq.
bütün bank hesabatlarının siyahısı, biz istifadə ls komanda, çıxış sonra boru
ls | ren -newname {$_.name -Dəyişdirin('(.+)bank(.+)','$1Credit Card$2')}
adını dəyişmək komanda faylları adını dəyişmək üçün boru sonra istifadə olunur. $_ boru əvvəl çıxış tutan obyekt, və biz adı əmlak istifadə olunur $_ obyekt. -replace PowerShell strings istifadə olunur, olan yeni simli ilə bir simli əvəz. -replace edir ki, bir funksiyası var 2 parametrləri. 1-ci parametr biz əvəz etmək istəyirəm köhnə simli və 2-ci parametri yeni simli.
Regex qruplar almasına bizə simli hissələri saxlamaq imkan verir. Regex In, mötərizədə qoymaq bir şey sonra istifadə etmək əsir. məsələn,. (.+)Bank(.+) əvvəl və simvol 'Bank sonra bir şey tutan. Biz bu əsir hissələri istifadə edə bilərsiniz, istifadə edərək, $ və bir sıra. 1-ci mötərizə içinə ele $1 və 2-ci mötərizə daxil edər $2 s…
1-ci parametr In, Biz əvəz etmək istəyirəm köhnə string daxil, və eyni zamanda, biz saxlamaq istədiyiniz simli hissələri tutmaq (tutmaq). 2-ci parametri In, yeni simli tutmaq istəyirik əsir hissələri istifadə edir, eləcə də yeni simli özü məsələn. '$1Credit Card$2'.
nəticə:
Mode LastWrite Time Length Adı ---- --------- ---- ------ ---- -bir ---- 10/06/2018 12:40 0 1 = 9.8.16 Credit Card Statement 298.67.pdf -a ---- 10/06/2018 12:40 0 2 = 9.9.16 Credit Card Statement 134.74.pdf -a ---- 10/06/2018 12:41 0 3 = 9.10.16 Credit Card Statement 123.43.pdf -a ---- 10/06/2018 12:41 0 4 = 9.11.16 Credit Card Statement 134.54.pdf -a ---- 10/06/2018 12:41 0 5 = 9.12.16 Credit Card Statement 157.98.pdf -a ---- 10/06/2018 12:41 0 6 = 9.1.17 Credit Card Statement 123.45.pdf
