ఎలా బ్యాచ్ 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

ఇక్కడ, ఫైల్ పేరు ఒక సీరియల్ కలిగి # మొదట్లో, = తరువాత, 'బ్యాంక్ స్టేట్మెంట్ తరువాత’ ప్రకటన సంతులనం యొక్క ముగింపు తరువాత.

ఈ ఫైళ్లు నిజానికి క్రెడిట్ కార్డు ప్రకటనలు మరియు పదం 'బ్యాంక్ లో ఉన్నాయి’ పదాలు 'క్రెడిట్ కార్డ్' ద్వారా భర్తీ చేయాల్సి. ఫైల్ పేరు యొక్క అన్ని మిగిలిన ఒకే ఉంటుందని.

ఈ సాధించడానికి క్రమంలో, we will be using Windows PowerShell with Regex.

అన్ని బ్యాంకు వాంగ్మూలాలు జాబితా, మేము ఉపయోగించే ls కమాండ్, తరువాత అవుట్పుట్ పైపు

ls | రెన్ -newname {$_.name -replace('(.+)బ్యాంక్(.+)','$ 1Credit కార్డ్ $ 2')}

పేరుమార్పుల ఆదేశం ఫైళ్ళను పేరు పైపు తరువాత ఉపయోగిస్తారు. $_ పైపు ముందు అవుట్పుట్ కలిగి ఆ వస్తువు, మరియు మేము పేరు ప్రాపర్టీ ఉపయోగిస్తున్నారు $_ ఆబ్జెక్ట్. -replace is used on strings in PowerShell, ఇది ఒక కొత్త స్ట్రింగ్ తో ఒక స్ట్రింగ్ భర్తీ. -replace తీసుకుంటుంది ఒక ఫంక్షన్ ఉంది 2 పారామితులు. 1 వ పరామితి మేము స్థానంలో కావలసిన పాత స్ట్రింగ్ మరియు 2 వ పారామితి కొత్త స్ట్రింగ్ ఉంది.

లో Regex సమూహాలు బంధించడం మాకు స్ట్రింగ్ యొక్క భాగాలు ఉంచడానికి అనుమతిస్తుంది. Regex లో, కుండలీకరణములలో చాలు ఏదైనా, తర్వాత ఉపయోగించడానికి సేకరించారు. ఉదా. (.+)Bank(.+) ముందు మరియు అక్షరాలు 'బ్యాంక్' తర్వాత ఏదైనా సంగ్రహించే. మేము ఈ స్వాధీనం భాగాలను ఉపయోగించవచ్చు, ఉపయోగించడం ద్వార $ మరియు ఒక సంఖ్య. 1 వ కుండలీకరణములలో లోకి సంగ్రహించే $1 మరియు 2 వ కుండలీకరణములలో లోకి సంగ్రహించే $2 etc…

1 వ పరామితిలో, మేము స్థానంలో కావలసిన పాత స్ట్రింగ్ పేర్కొనండి, మరియు అదే సమయంలో మేము ఉంచాలని ఆ స్ట్రింగ్ యొక్క భాగాలు పట్టుకుని (సంగ్రహ). 2 వ పరామితిలో, కొత్త స్ట్రింగ్ మేము ఉంచాలని ఆ స్వాధీనం భాగాలు ఉపయోగిస్తుంది, అలాగే కొత్త స్ట్రింగ్ కూడా ఉదా. '$1Credit Card$2'.

ఫలితం:

మోడ్ LastWrite సమయం పొడవు పేరు
----       ---------      ----            ------   ----
-ఒక ----     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

స్పందించండి