[Author] [Contributors] [Description] [Copying] [Requirements] [Download] [Installation] [Usage] [Contribute] [Changelog] [Todo]
Peter Hanecak <hany (at) hany.sk>
Thank you.
hd2u is Hany's DOS <-> Unix convertor.
dos2unix
is filter used to convert plain texts from DOS (CR/LF) format to UNIX
format (LF) and vice versa. Aditionaly it can also handle files in Macintosh
format (CR) and convert them into other formats.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
See the COPYING file or GNU General Public License page for license information.
Copyright 1997,.. by Peter Hanecak <hany (at) hany.sk>.
All rights reserved.
Popt library is required to process command line arguments.
For more information about mktemp see http://freshmeat.net/projects/popt/. Sources can be downloaded from ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/. RPM package of mktemp can be found for example at http://rpmfind.net/linux/RPM/popt.html.
You can find sources at:
Also you can download RPM packages from:
First, you need some UNIX system which have some basic C development tools alredy installed.
Note: If you're using some package management tool on your system you should have also installed so called 'development' package of popt library (popt-dev or popt-devel, etc.) so required header files are also installed.
After you sucessfuly downloaded and unpacked source tarball, do the following in source directory:
$ ./configure
$ make
$ make install
This will build and install 'dos2unix
' into default location,
which is /usr/local/bin .
If you want to use another prefix than /usr/local use for example:
$ ./configure --prefix=/usr
This will install 'dos2unix
' into /usr/bin .
For more information use:
$ ./configure --help
dos2unix [--verbose|-v] [--test|-t] [--force|-f] [--<x>2<y>|--auto|-<Z>] [<file name> [...]] | ||
--auto , -A |
output will be set based upon autodetection of source format | |
--d2u , -U |
perform DOS -> UNIX conversion | |
--m2u , -T |
perform MAC -> UNIX conversion | |
--u2d , -D |
perform UNIX -> DOS conversion | |
--u2m , -M |
perform UNIX -> MAC conversion | |
--d2m , -O |
perform DOS -> MAC conversion | |
--m2d , -C |
perform MAC -> DOS conversion | |
--force , -f |
suppress internal conversion type corrections based on autodetected input format | |
--skipbin , -b |
skip binary files | |
--test , -t |
don't write any conversion results; usefull with --verbose
to just report on source type |
|
--verbose , -v |
print extra information on stderr | |
--version , -V |
print version information on stderr |
When no options are given then input format will be automatically detected and converted as follows:
Same as above applies if --auto
option is used.
When no file is given, then stdin is used as input and stdout as output.
When concrete conversion type is used (--d2u
or --u2d
option) and file format is autodetected as target format, file is skipped - not
touched - so there is no modification time change.
Binary files will be skipped automatically if option --skipbin
(or -b
) is used.
Stray '\r' characters (without a following '\n') are reported but only conversion 'DOS -> Unix' affects them (they are skipped).
You can display usage information using 'dos2unix -h
' or
'dos2unix --help
'.
Examples:
this converts README.txt into DOS format; if README.txt is in UNIX format, it is converted otherwise it will be unchanged:
dos2unix --u2d README.txt
this is obvious :) :
cat source_in_UNIX_format.txt | dos2unix > result_in_DOS_format.txt
this will just "copy" source.txt to unchanged_source.txt:
cat source.txt | dos2unix | dos2unix > unchanged_source.txt
this will convert all .txt files in current directory into UNIX format, all documents in UNIX format and all binary files are skipped, verbose information will be displayed:
dos2unix -Ubv *.txt
If you would like to submit a patch, send it to me <hany (at) hany.sk>. Please be sure to include a textual explanation of what your patch does.
The preferred format for changes is 'diff -u
' output. You might
generate it like this:
$ cd hd2u-work
$ [your changes]
$ make mrproper
$ cd ..
$ diff -urN hd2u-orig hd2u-work > mydiffs.patch
0.9.2 | 2004/10/28 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
2004/10/25 | |
2004/04/18 | 0.9.1 |
2004/04/14 | 0.9.0 |
2003/11/14 | 0.8.2 |
2003/10/03 | 0.8.1 |
2003/02/26 | 0.8.0 |
2002/05/07 | 0.7.2 |
2002/01/04 | 0.7.1 |
2001/01/11 | 0.7.0 |
2001/02/11 | 0.6.0 |
2001/01/21 | 0.5.12 |
2000/10/03 | 0.5.11 |
2000/09/26 | 0.5.10 |
2000/08/07 | 0.5.9 |
2000/08/05 | 0.5.0 |
1999/11/25 | |
dos2unix
' unable to handle big files or b) some weird character in input
files or both (reported are incidents: files over 1 GB and truncation of
one file from 6.4 MB to 2.5 MB)