Archiv verlassen und diese Seite im Standarddesign anzeigen : * soll alphabetisch sortiert sein
marcdevil
17-09-2001, 15:01
hi
in diversen shellprogrammen gibt man mit * alle dateien an, jedoch nehmen die programme diese in einer imho willkuerlichen reihenfolge an (vermutlich so wie sie physikalisch auf der platte sind)
kann man das irgendwie so aendern, dass * immer alphabetisch uebergeben wird ?
bsp.: cdrecord -audio *wav fuehrt dazu, das erst track03.wav, dann track05.wav, dann track01.wav usw gebrannt wird.
mightymike99
17-09-2001, 20:52
Hi,
ls sortiert standardmaessig alphabetisch.
also so: ls | xargs cdrecord
oder so: cdrecord $(ls)
oder mit erzwungener sortierung: cdrecord $(ls | sort)
oder nach altem schema mit rueckwaertshochkomma cdrecord `ls`
oder ohne ls: cdrecord $(echo * | sort)
siehe www.linuxfibel.de (http://www.linuxfibel.de)
Gruß
fork
[ 17. September 2001: Beitrag editiert von: fork ]
marcdevil
18-09-2001, 12:00
mit einfachen dateinamen geht diese methode ja ganz prima, aber bei zu quotierenden dateinamen muss man noch einige optionen zu ls geben. kennst du die qoutieroption? also hier auf arbeit hat ls keine solche option, aber zu hause habe ich sowas in der art schonmal gesehen.
mightymike99
18-09-2001, 19:28
Sorry deine Gedanken versteh' ich nicht ganz, vielleicht ist es ja einfach nur ein Definitionsmangel.
Quotierung: schuetzen von Interpretation und/oder Dateinamenexpansion
Quotierungszeichen sind: Anfuehrungszeichen, Hochkomma und Backslash
z. B. "*.txt" wird dem Programm als *.txt uebergeben, und wird durch eventuell vorhandene Dateinamen ersetzt.
Die Muster nach denen Dateien aufgeloest werden heissen regulaere Ausdruecke
z. B. * oder *.txt oder ??[^a][0-9].
Wenn ich's nicht getroffen habe erzaehl mal etwas mehr ueber dein Problem.
Gruß
fork
marcdevil
18-09-2001, 23:19
cdrecord -audio *wav
ergibt
cdrecord -audio "Track 02.wav" "Track 03.wav" "Track 01.wav"
ls gibt folgendes aus:
Track 01.wav
Track 02.wav
Track 03.wav
cdrecord -audio $(ls *wav)
ergibt
cdrecord -audio "Track" "01.wav" "Track" "02.wav" "Track" "03.wav"
Error: file Track not found
ls -Q gibt folgendes aus:
"Track 01.wav"
"Track 02.wav"
"Track 03.wav"
cdrecord -audio $(ls -Q *wav)
ergibt
cdrecord -audio "Track 01.wav" "Track 02.wav" "Track 03.wav"
ls -Q hatte ich gesucht, allerdings gibts diesen schalter nicht in der ls version von Solaris8, bei mir auf arbeit :(
marcdevil
18-09-2001, 23:23
ähm, .. cdrecord quotiert einfach die "", es klappt also doch nicht :(
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.