Powershell: बैच का नाम बदलें और विस्तार रखें?


0

क्या फाइलों की एक श्रृंखला का नाम बदलना और मूल एक्सटेंशन को अनुक्रम में रखना संभव है?

उदाहरण के लिए, यदि आपके पास निर्देशिका में फाइलें थीं:

dogfile1.jpg, wolffile493.png, and dogfile59.jpg

और उनका नाम बदलना चाहता था dog1.jpg, dog2.png, dog3.jpg

मैंने देखा कि आप इसे बैच का नाम बदलने के लिए उपयोग कर सकते हैं लेकिन यह आपके द्वारा चुने गए एक्सटेंशन (पूर्व। Jpg) का नाम बदल देता है।

$nr=1 
Dir | %{Rename-Item $_ -NewName (‘NewFile{0}.jpg’ -f $nr++)}

जवाबों:


1

हेयर यू गो:

PS C:\tmp\y> $nr=1; Dir | %{Rename-Item $_ -NewName (‘NewFile{0}{1}’ -f $nr++, $_.extension)}

यहाँ एक त्वरित प्रदर्शन है:

PS C:\tmp\y> echo "123" > firstfile.txt
PS C:\tmp\y> echo "abc" > secondfile.jpg
PS C:\tmp\y> dir -Name
firstfile.txt
secondfile.jpg
PS C:\tmp\y> $nr=1; Dir | %{Rename-Item $_ -NewName (‘NewFile{0}{1}’ -f $nr++, $_.extension)}
PS C:\tmp\y> dir -Name
NewFile1.txt
NewFile2.jpg
PS C:\tmp\y> type *
123
abc
PS C:\tmp\y>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.