मैं फ़ोल्डर की सभी फ़ाइलों को एक अलग पंक्ति में कैसे परिवर्तित करूं? (विंडोज पर)


15

मैं एक फ़ोल्डर में सभी फाइलों को एक अलग लाइन एंडिंग (लिनक्स या मैक) में कैसे परिवर्तित करूं? मैं विंडोज का इस्तेमाल कर रहा हूं।

अभी मेरा दृष्टिकोण एक लिनक्स बॉक्स में कॉपी करने के लिए Winscp का उपयोग करना है और फिर फ़ोल्डर पर पुन: dos2unix चलाना है।


अपने वर्तमान दृष्टिकोण की तरह लगता है बहुत अच्छा है
रामहुंड

जवाबों:


17

Cygwin में Cygwin और Dos2unix स्थापित किए गए

find . -type f -exec dos2unix {} \;

1
आप चाहते हैं -maxdepth 1कि यह उपनिर्देशिकाओं से न
गुजरे

1
पारितोषिक के लिए धन्यवाद। लेकिन मेरे उपयोग के मामले में उप-फ़ोल्डर्स में उन सभी फ़ाइलों की आवश्यकता होती है ..
सतीश

Cygwin को केवल एक प्रोग्राम चलाने के लिए इंस्टॉल करना मुझे बड़े पैमाने पर ओवरकिल की तरह लगता है। मैं केवल बहुत ही प्रोग्राम के डॉस संस्करण का उपयोग करने का सुझाव दूंगा और फिर सभी फाइलों के खिलाफ इसे चलाने के लिए शेल में एक लाइन कमांड।
रिचर्ड

1
@ रीचर्ड: सच है, लेकिन हम में से कई के पास पहले से ही सिग्विन है और यह उपकरण स्थापित है। आप इसे भी आजमा सकते हैं। यह आपके विंडोज को अधिक लिनक्स-वाई बना देगा और इसलिए, अधिक सहनीय है। इसके अलावा, आपको अपनी कमांड-लाइन समस्याओं के लिए विंडोज़-विशिष्ट समाधानों की तलाश करने की आवश्यकता नहीं है।
जॉन रेड

5

आप विंडोज पर cygwin32 (या समान) के बजाय गिट बैश स्थापित कर सकते हैं । यह कई यूनिक्स की तरह आदेशों (जैसे, के साथ आता है find, dos2unix, आदि) में bashअनुकरण मोड। एक बार स्थापित होने के बाद, विंडोज से यूनिक्स फाइल एंडिंग में फ़ाइलों को परिवर्तित करना आसान होना चाहिए।

मान लीजिए कि आपके पास src नामक एक फ़ोल्डर ट्री में आपकी फाइलें (प्रत्यय .java के साथ समाप्त ) हैं और आप विंडोज से यूनिक्स वालों के लिए उनके अंत को बदलना चाहते हैं।

  1. Windows Explorer में src का पता लगाएँ ।
  2. Windows संदर्भ मेनू से उस फ़ोल्डर पर Git Bash को राइट क्लिक करें और खोलें।
  3. चलाएँ: find . -name "*.java" -exec dos2unix {} \;

और बस!


0

Dos2unix और unix2dos का उपयोग करने का आपका उत्तर उत्कृष्ट है।

यहाँ आपके उत्तर के आधार पर एक और तरीका है।

आप Gnuwin32 का उपयोग कर सकते हैं, हालांकि फनीली पर्याप्त रूप से Gnuwin32 पैकेज जिसमें कमांड है Cygutils http://gnuwin32.sourceforge.net/packages/cygutils.htm है तो आपको C: \ Program Files में dix2unix.exe मिल जाएगा। .... \ GnuWin32 \ bin और उसके साथ आपके पेट में।

C:\somedir>dir<ENTER>
 Volume in drive C has no label.
 Volume Serial Number is DC46-3C68

 Directory of C:\somedir

05/23/2014  01:10 AM    <DIR>          .
05/23/2014  01:10 AM    <DIR>          ..
05/23/2014  01:10 AM                 4 file1
               1 File(s)              4 bytes
               3 Dir(s)  196,129,951,744 bytes free

Do this command to go from dos2unix
C:\somedir>for %f in (*) do dos2unix %f <ENTER>

C:\somedir>dos2unix file1 <-- This runs automatically from you doing the above command
file1: done.

And do this command to go from unix2dos
C:\somedir>for %f in (*) do unix2dos %f <ENTER>

C:\somedir>unix2dos file1 <-- This runs automatically from you doing the above command
file1: done.

C:\somedir>

और परीक्षण करने के लिए कि क्या आपके% के लिए च आप क्या चाहते हैं, तो उपयोग गूंज या करना होगा @ECHO जैसे
(*) कर @ECHO unix2dos% च में% च के लिए

और आप xxd का उपयोग फाइल बनाने के लिए कर सकते हैं और परीक्षण कर सकते हैं कि वे रूपांतरित हैं। विंडोज़ के लिए xxd VIM C: \ Program "" Files \ vim \ vim74 \ xxd.exe के साथ आता है

so, i'll create a file, I like this style of command is it allows me to 
create whateer file I want, a dos one or a unix one or anything.  
61 is hex for 'a'       
C:\somedir>echo 610d0a| xxd -r -p >testfile <ENTER>

check the file raw, in its hex
C:\somedir>cat testfile | xxd -p <ENTER>
610d0a

check the file in ascii or unicode
C:\somedir>cat testfile <ENTER>
a

and the following commands just prove that dos2unix and unix2dos work/are working fine.  
C:\somedir>dos2unix testfile <ENTER>
testfile: done.

C:\somedir>cat testfile | xxd -p <ENTER>
610a

C:\somedir>unix2dos testfile <ENTER>
testfile: done.

C:\somedir>cat testfile | xxd -p <ENTER>
610d0a

C:\somedir>

नोट- मामले में भी एक * nix distro का उपयोग करते हुए, apt-get (apt-cache search dos2unix) को देखते हुए पैकेज वास्तव में है (शायद अनजाने में!) dos2unix (इसलिए apt-get install dos2unix के साथ इंस्टॉल किया गया है) और इसमें dos2unix भी शामिल है। निष्पादन योग्य, unix2dos निष्पादन योग्य। यदि आप apt-cache खोज unix2dos करते हैं तो यह dos2unix पैकेज दिखाता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.