Problem mit Zeilenumbruch bei auslesen einer Datei

Hinweis: In dem Thema Problem mit Zeilenumbruch bei auslesen einer Datei gibt es 7 Antworten. Der letzte Beitrag () befindet sich ganz unten auf dieser Seite.
  • Hallo zusammen,
    ich probiere gerade ein Script zum laufen zu bringen welches eine Datei ausliest (Diese wurde auf Windows automatisch generiert). In dieser auszulesenen Datei ist ein Pfad welcher dann anschließend für ein cp Befehl benutzt werden soll.
    Nun ist aber der am Ende des Pfades ein Zeilenumbruch. Gibt es eine möglichkeit diesen Zeilenumbruch automatisch zu entfernen?

    Bash: Script
    #! /bin/ksh
    
    
    line=$(head -n 1 /vol/transfer/temp2.txt)
    cp $line /vol/transfer/ausgabe.txt


    Code
    linux-test:~/Skripte # ./cpDatei.sh 
    cp: cannot stat ‘/root/Skripte/hallo.txt\r’: No such file or directory


    Hab hier nochmal zum besseren Verständnis die das Script und die Ausgabe gepostet.


    Danke schonmal im Vorraus :) ,


    jofri

    Für den Inhalt des Beitrages 93353 haftet ausdrücklich der jeweilige Autor: jofri

  • kannst du mal so eine Datei zur Verfügung stellen? Für mich ansonsten schwer nachvollziehbar wenn nix zum Testen da ist.

    There's no place like 127.0.0.1

    Für den Inhalt des Beitrages 93356 haftet ausdrücklich der jeweilige Autor: wurzel99

  • <blockquote class="quoteBox container containerPadding quoteBoxSimple" cite="" data-author=""><header contenteditable="false"><h3><small>(Klicken um eine Quelle anzugeben)</small></h3><a class="redactorQuoteEdit"></a></header><div>cp: cannot stat ‘/root/Skripte/hallo.txt\r’: No such file or directory</div></blockquote><p>Das ist kein Zeilenumbruch, sondern ein Return. Der Text stammt von Windows - stimmts?</p><p>@@@wcf_empty_line@@@</p><p>Ich empfehle die Bash, anstelle Ksh:</p><p></p><div class="codeBox container" contenteditable="false" data-highlighter="plain"><div><div><h3>Quellcode</h3><div class="redactorEditCodeBox"><div>Quellcode bearbeiten</div></div></div><ol start="1"><li>#!/bin/bash</li><li></li><li>line="$(head -n 1 /vol/transfer/temp2.txt | tr -d '\r')"</li><li>cp "$line" /vol/transfer/ausgabe.txt</li></ol></div></div><p></p><p>@@@wcf_empty_line@@@</p><p>Bedenke: Ein Zeilenumbruch ist ein erlaubtes Zeichen in Dateinamen, wie alle anderen Zeichen auch - ausser Slash und Nullbyte.</p><p>Folgerichtig sollte eine Dateiliste nicht mit Zeilenumbrüchen, sondern mit Nullbytes terminiert sein.</p>

    Für den Inhalt des Beitrages 93361 haftet ausdrücklich der jeweilige Autor: Easy

  • @Easy Hat geklappt Danke ! War das extra mit dem html code ? Wird bei mir nähmlich nicht richtig angezeigt :D


    -jofri

    Für den Inhalt des Beitrages 93383 haftet ausdrücklich der jeweilige Autor: jofri

  • Ups, keine Ahnung, wie das kam, in der Vorschau sah es noch gut aus.

    Für den Inhalt des Beitrages 93417 haftet ausdrücklich der jeweilige Autor: Easy