Ich habe eine Reihe von XML-Dateien in einem Verzeichnis, in denen der Befehl dos2unix ausgeführt werden muss und neue Dateien werden so oft hinzugefügt. I Anstatt den Befehl dos2unix manuell für jede Datei auszuführen, möchte ich alles mit einem Skript automatisieren. Ich habe noch nie an einem Shell-Skript in meinem Leben gesucht, aber bisher habe ich diese von dem, was ich auf ein paar Tutorials gelesen haben:Wie man Dos2unix mit Shell-Skript automatisieren?
FILES=/tmp/testFiles/*
for f in $FILES
do
fname=`basename $f`
dos2unix *.xml $f $fname
done
Allerdings halte ich immer die ‚Nutzung‘ Ausgabe zeigt nach oben. Ich denke das Problem ist, dass ich den Namen der neuen Datei nicht korrekt (fname) zuweisen werde. Kann jemand helfen.
Danke, Alan
Vielen Dank, aber können Sie erklären, was das bedeutet: "$ (echo f $ | sed s @ testfiles/@ testfiles/konvertiert /)" Edit: Dieser Befehl funktioniert nicht. Fehler: sed: Befehl verstümmelt: s @ testFiles/@ testFiles/konvertiert /, das Entfernen der sed-Befehl gibt Fehler: COuld nicht öffnen Eingabedatei FILES –
Ich füge einfach 'konvertiert /' vor diesem Namen der Datei. –
Sie brauchen nicht 'sed' dafür. Sie können es mit '$ {f/testFiles \ // testFiles \/converted \ /}' – rush