Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
Post Reply
bernostern
Posts: 129
Joined: 2003-02-09 12:52
 

Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by bernostern »

Hallo,

Gibt es ein Tool , mit dem ich rekursiv den DOS Zeilenumbruch auf UNIX - Umbruch ändern kann?

flip und dos2unix überzeugen mich da grad nicht...bzw. da gabs doch mal ein unzip-Tool, das gleichzeitig beim entpacken die Umbrüche kontrolliert?

Danke,
Bern
kase
Posts: 1031
Joined: 2002-10-14 22:56
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by kase »

dos2unix sollte aber eigentlich dein Freund sein, notfalls noch mit einer for<=>find Anweisung verknüpfen...
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by dodolin »

a) Was genau meinst du mit "rekursiv"? Mehrere Dateien mit einem Aufruf?
b) Wenn a), dann dürfte das IMHO auch mit dos2unix gehen.

Aus der manpage:

Code: Select all

       -o --oldfile file ...
              Old file mode. Convert the file and write output to
              it. The program default to run in this mode.  Wild­
              card names may be used.
Man beachte die Punkte, die heissen, dass man auch mehrere "file" angeben kann.

Zu c) Warum nicht mal die manpage von unzip lesen?!

Code: Select all

MODIFIERS
       -a     convert  text  files.   Ordinarily  all  files  are
              extracted exactly as they are stored (as ``binary''
              files).   The  -a option causes files identified by
              zip as text files (those with the `t' label in zip­
              info listings, rather than `b') to be automatically
              extracted as such, converting line endings, end-of-
              file  characters  and  the  character set itself as
              necessary.  (For example, Unix files use line feeds
              (LFs) for end-of-line (EOL) and have no end-of-file
              (EOF)  marker;  Macintoshes  use  carriage  returns
              (CRs)  for  EOLs; and most PC operating systems use
              CR+LF for EOLs and control-Z for EOF.  In addition,
              IBM mainframes and the Michigan Terminal System use
              EBCDIC rather than the more common ASCII  character
              set,  and  NT  supports  Unicode.)  Note that zip's
              identification of text files is by  no  means  per­
              fect;  some  ``text''  files may actually be binary
              and vice versa.  unzip therefore prints  ``[text]''
              or  ``[binary]'' as a visual check for each file it
              extracts when using the -a option.  The -aa  option
              forces  all  files to be extracted as text, regard­
              less of the supposed file type.
bernostern
Posts: 129
Joined: 2003-02-09 12:52
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by bernostern »

Hi,

also mit 'rekursiv' meine ich alle Dateien im Ordner und auch die darunterliegenden Ordner mit ihren Dateien.
dos2unix geht leider nicht über den aktuellen Ordner hinaus, aber man (ich) hat oft .zips mit mehreren verschachtelten Ordnern und die haben gerne die falschen Umbrüche (zumindest bei dem ganzen CS-Schmarrn).

Aber die -a Option von unzip hört sich ganz gut an!

@ kase:
Bitte schreib doch mal ein kleines Beispiel.
ich hab mit sowas schonmal sehr erfolgreich und rekursiv den gesamten Inhalt von /etc gelöscht. Aber man hat ja ein Backup :-)


Schöne Grüße,
Bern
dea
Posts: 532
Joined: 2002-08-13 12:05
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by dea »

ungetestet:

Code: Select all

cd $directory
find . -type f -exec dos2unix {} ;
Ggf. kannst Du noch mit '-name "<Pattern>"' die Auswahl einschränken ...
scheich
Posts: 6
Joined: 2002-10-09 10:43
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by scheich »

Hmm, ich würde das irgendwie in die unterste Grundlagenschublade tun... oder spricht was gegen:

dos2unix `find -name '*.*'`

?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by captaincrunch »

oder spricht was gegen:
Ja : ein einzelnes "*" hätte es auch getan ... :wink:
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
kase
Posts: 1031
Joined: 2002-10-14 22:56
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by kase »

ich hab mir deinen Befehl nicht komplett durchgelesen, aber irgendwo hab ich ein *.* entdeckt, und deshalb gehe ich mal davon aus, dass das falsch sein muss. Wir haben hier (leider) ^^ keine DOS Oberfläche...
thorsten
Posts: 561
Joined: 2003-02-01 13:14
Location: Fuldatal
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by thorsten »

Wenn du Text-Dateien per FTP kopierst und die Einstellung auf binary hast, dann passiert sowas.
Wenn du die Files im 'ascii'-Modus überträgst, dann werden die Zeilenumbrüche automatisch korrigiert.

Beim nächsten Mal achte halt darauf in welcher Einstellung die Dateien kopiert werden und du hast den Ã?rger nicht nochmal. ;)
Anonymous
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by Anonymous »

Thorsten wrote:Wenn du Text-Dateien per FTP kopierst und die Einstellung auf binary hast, dann passiert sowas.
Wenn du die Files im 'ascii'-Modus überträgst, dann werden die Zeilenumbrüche automatisch korrigiert.

Beim nächsten Mal achte halt darauf in welcher Einstellung die Dateien kopiert werden und du hast den Ã?rger nicht nochmal. ;)
Es gibt auch Spassvögel die es nicht besser wissen und Archive anlegen die diese Zeilenumbrüche enthalten. Bei zip-Archiven hilft ein "unzip -a", aber ich bin auch schon ueber .tgz gestolpert die DOS-Zeilenendekennzeichen enthielten.

Du siehst, es ist nicht immer ein falsch bedienter ftp-client schuld...
scheich
Posts: 6
Joined: 2002-10-09 10:43
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by scheich »

kase wrote:ich hab mir deinen Befehl nicht komplett durchgelesen, aber irgendwo hab ich ein *.* entdeckt, und deshalb gehe ich mal davon aus, dass das falsch sein muss. Wir haben hier (leider) ^^ keine DOS Oberfläche...
Scherzkeks. Ausgehend davon dass es DOS/Win-Dateien sind, nehme ich mal stark an, dass sie alle einen Punkt haben. Und wer find kennt, sollte wissen, dass es auch Ordnernamen zurückgibt, die kann man mit dem Punkt meistens umgehen.
Was dos2unix bei Ã?bergabe eines Ordners als Argemument macht, weiss ich halt nicht, aber sicher ist sicher.
thelaw
Posts: 53
Joined: 2002-07-30 18:53
Location: Salzgitter
 

Re: Debian: DOS Zeilenumbruch rekursiv auf UNIX ändern?

Post by thelaw »

Code: Select all

find -type f
Post Reply