Regex ашиглан Windows PowerShell нь файлын нэг хэсгийг хэрхэн багц нэрийг өөрчлөх?
Энэ жишээн дээр, бидэнд байгаа 6 огноо, доор файлын нэртэй доор файлууд:
Горим LastWriteTime Урт нэр ---- ------------- ------ ---- -нэг ---- 10/06/2018 12:40 0 1 = 9.8.16 Банкны тодорхойлолт 298.67.pdf -a ---- 10/06/2018 12:40 0 2 = 9.9.16 Банкны тодорхойлолт 134.74.pdf -a ---- 10/06/2018 12:41 0 3 = 9.10.16 Банкны тодорхойлолт 123.43.pdf -a ---- 10/06/2018 12:41 0 4 = 9.11.16 Банкны тодорхойлолт 134.54.pdf -a ---- 10/06/2018 12:41 0 5 = 9.12.16 Банкны тодорхойлолт 157.98.pdf -a ---- 10/06/2018 12:41 0 6 = 9.1.17 Банкны тодорхойлолт 123.45.pdf
Энд, файлын нэр нь цуваа агуулсан # эхэндээ, = дараа нь, "Банкны мэдэгдэлд дараа’ мэдээ тэнцэл эцэс гэхэд дараа.
Эдгээр файлууд нь үнэн Credit Card тайлан, үгийг "банкны байна’ хэрэгцээнд үгс "Credit Card" сольж болно. файлын бүх үлдсэн хэсэг нь ижил байх ёстой.
Энэхүү зорилгод хүрэхийн тулд, Бид Regex нь Windows PowerShell ашиглах болно.
бүх банкны тайлан нь жагсаан харахын тулд, бид ашиглах ls тушаал, Дараа нь гаралтын хоолой
LS | Рэн -newname {$_.name -replace('(.+)Банк(.+)','$1Credit Card$2')}
нэрийг өөрчлөх тушаал нь файл нэрийг өөрчлөх хоолойн дараа ашиглаж байна. $_ хоолойн өмнө гаралтыг эзэмшдэг объект юм, Бид нэр өмч ашиглаж байна $_ обьект. -replace PowerShell чавхдасыг дээр ашиглаж байна, ямар нэг шинэ мөр нь мөр солих. -replace авдаг үйл ажиллагаа юм 2 параметрүүд. 1-р параметр нь бид солих хүсэлтэй хуучин мөр ба 2-р параметр шинэ мөр байна.
Regex-д бүлгийг барьж АНУ-ын мөрийн хэсгүүдийг байлгах боломжийг олгодог. Regex-д, хаалтад хийж юу ч дараа нь ашиглахын тулд баригдсан байна. жишээ нь:. (.+)Bank(.+) өмнө болон Зохиолын баатрууд, гол "банк" дараа нь юу ч барьж. Бид эдгээр баригдсан хэсгийг ашиглаж болно, ашиглах замаар $ болон хэд хэдэн. 1-р Хаалтанд болгон авчээ $1 мөн 2-р Хаалтанд дотор барьж $2 гэх мэт…
1-р параметр нь, бид солихыг хүсвэл хуучин мөрийг зааж, мөн тэр үед бид хадгалахыг хүсэж мөр хэсгийг барих (барих). 2-р параметр нь, шинэ мөр бид хадгалахыг хүсэж баригдсан хэсгийг ашигладаг, түүнчлэн шинэ мөр нь өөрөө жишээ нь:. '$1Credit Card$2'.
үр дүн:
Горим LastWrite цаг Урт нэр ---- --------- ---- ------ ---- -нэг ---- 10/06/2018 12:40 0 1 = 9.8.16 Credit Card мэдэгдэл 298.67.pdf -a ---- 10/06/2018 12:40 0 2 = 9.9.16 Credit Card мэдэгдэл 134.74.pdf -a ---- 10/06/2018 12:41 0 3 = 9.10.16 Credit Card мэдэгдэл 123.43.pdf -a ---- 10/06/2018 12:41 0 4 = 9.11.16 Credit Card мэдэгдэл 134.54.pdf -a ---- 10/06/2018 12:41 0 5 = 9.12.16 Credit Card мэдэгдэл 157.98.pdf -a ---- 10/06/2018 12:41 0 6 = 9.1.17 Credit Card мэдэгдэл 123.45.pdf
