Anything like DOS2Unix for Windows?

匿名 (未验证) 提交于 2019-12-03 02:30:02

问题:

I have some shell scripts created on windows I want to run Dos2Unix on them.

But as I have read that Dos2Unix works in Linux environment so, Is there way that I can convert my files to UNIX format while working in windows?

I have already installed CYGWIN but I am facing some issues as

 Administrator@SGH735082N ~ $ pwd /home/Administrator  Administrator@SGH735082N ~ $ cd C:\CVS Code  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix BLPDB000 BLPDB000: dos2Unix processing BLPDB000: No such file or directory  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix -h dos2Unix: bad argument -h: unknown option  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix --help dos2Unix version 0.1.3   converts the line endings of text files from   DOS style (0x0d 0x0a) to UNIX style (0x0a)  Usage: dos2Unix [OPTION...] [input file list...]  Main options (not all may apply)   -A, --auto     Output format will be the opposite of the autodetected source                  format   -D, --u2d      Output will be in DOS format   --unix2dos     Output will be in DOS format   -U, --d2u      Output will be in UNIX format   --dos2unix     Output will be in UNIX format   --force        Ignore binary file detection   --safe         Do not modify binary files  Help options   -?, --help     Show this help message   --usage        Display brief usage message   --version      Display version information   --license      Display licensing information  Other arguments   [input file list...]       for each file listed, convert in place.                              If none specified, then use stdin/stdout  Administrator@SGH735082N /cygdrive/c/CVS $  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix  -oBLPDB000 dos2Unix: bad argument -oBLPDB000: unknown option  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix -k BLPDB000 dos2Unix: bad argument -k: unknown option  Administrator@SGH735082N /cygdrive/c/CVS $ dos2Unix BLPDB000.txt BLPDB000.txt: dos2Unix processing BLPDB000.txt: No such file or directory  Administrator@SGH735082N /cygdrive/c/CVS $ pwd /cygdrive/c/CVS  

Thanks

回答1:

If you have perl installed, you can simply run:

perl -i -p -e "s/\r//" <filename> [<filename2> ...] 


回答2:

There are at least two resources:

  • dos2unix on SourceForge, which appears to be actively maintained (as of 2015), and has pre-compiled releases for Windows, both 32- and 64-bit. Also includes unix2dos, mac2unix, and unix2mac.
  • CygUtils from GnuWin32, which are miscellaneous utilities forked from Cygwin, which includes dos2unix as well as several other related utilities. This package is not actively maintained (last update was in 2008).


回答3:

You are using a very old dos2unix version on Cygwin. Cygwin 1.7 changed to a new version of dos2unix, the same as is shipped with most Linux distributions, about two years ago. So update your dos2unix with Cygwin's setup program. Check you get version 6.0.3.

There are also native Windows ports of dos2unix available (win32 and win64). See http://waterlan.home.xs4all.nl/dos2unix.html

regards,



回答4:

You can use Notepad++.

The instructions to convert a directory recursively are as follows:

  1. Menu: Search -> Find in Files...
  2. Directory = the directory you want to be converted to Unix format, recursively. E.g., C:\MyDir
  3. Find what = \r\n
  4. Replace with = \n
  5. Search Mode = Extended
  6. Press "Replace in Files"


回答5:

I used grepWin:

  • Open the folder containing your files in grepWin
  • In the "Search for" section
    • select "Regex search"
    • Search for -> \r\n
    • Replace with -> \n
  • Hit "Search" to confirm which files will be touched, then "Replace".


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!