|echo "Converting $x"|
|tr -d '\015' < "$x" > "tmp.$x"|
|mv "tmp.$x" "$x"|
chmod +x dos2unix.sh
Apply to filename.txt
Feel free to wildcard the file:
from the sed 1liners...
TEXT CONVERSION AND SUBSTITUTION:
# IN UNIX ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format
sed 's/.$//' # assumes that all lines end with CR/LF
sed 's/^M$//' # in bash/tcsh, press Ctrl-V then Ctrl-M
sed 's/\x0D$//' # sed v1.5 only
Jul 27, 2018
Well, how to conver files in batch?
Dec 13, 2018
brew install dos2unix find . -type f -print0 | xargs -0 dos2unix
Nov 27, 2019
Some problem with script...
./dos2unix.sh: line 6: tmp.filename.js: No such file or directory
Nov 27, 2019
Nov 28, 2019
tr -d '\015' < "$x" > "tmp.$x"
Will script create this tmp file? Will I need to create this tmp file by myself?
May 21, 2022
tr -d '\015' < "$x" > "tmp.$x"Will script create this tmp file? Will I need to create this tmp file by myself?
This script makes tmp file and overwrite original file. You don't need to do anything.
Dec 14, 2022
Thanks for sharing this!!!!
I was having some issues with the tmp file not being found. I ended up contacting the string and then run the code. Here is what I ended up doing in the end.
for x do echo "Converting $x" temp_file+="tmp."$x tr -d '\015' < "$x" > temp_file mv temp_file "$x" done
Pillaged from http://hintsforums.macworld.com/showthread.php?t=125