ContainerDriver
06-02-2009, 22:06
Hallo,
hab den Thread schon mal vor ein paar Tagen in linuxforen.de aufgemacht (http://www.linuxforen.de/forums/showthread.php?t=259129), weil das Thema hier eigentlich nicht so recht reinpasst. Allerdings habe ich dort keine Antwort erhalten, bin mir aber ziemlich sicher, dass mir hier irgendjemand helfen kann.
Und zwar habe ich ein Problem mit der Verwendung von join. Ich will die Datei /etc/group mit der Ausgabe von id -g joinen um den Namen meiner Benutzergruppe zu erhalten (ich weiß, dass ich den auch leichter bekommen würde). Da in der Manpage von join steht, dass die beiden zu verbindenden Dateien nach dem Join-Kriterium sortiert sein müssen, lege ich hierzu eine sortierte Kopie von /etc/group an.
$ sort -t : -n -k 3 /etc/group > group.srt
Dann versuche ich zu joinen:
$ id -g
1000
$ id -g | join -t : -1 1 -2 3 -o 2.1 - group.srt
$
$ echo `id -g`:test | join -t : -1 1 -2 3 -o 2.1 - group.srt
$
, leider erscheint keine Ausgabe.
Wo liegt hier das Problem, bzw. was habe ich bei der Bedienung von join falsch gemacht?
Wenn ich das join-Kommando auf einem anderen System ausführe, erhalte ich folgende Fehlermeldung:
join: Datei 2 ist nicht sortiert
Allerdings ist die Datei 2 ja eigentlich nach dem join-Kriterium (Spalte 3) sortiert (mit Hilfe des sort-Aufrufs von weiter oben)? :confused:
Hier mal meine group.srt:
root::0:root
bin::1:root,bin,daemon
daemon::2:root,bin,daemon
sys::3:root,bin
adm::4:root,daemon
tty::5:
disk::6:root
lp::7:daemon
mem::8:
kmem::9:
wheel::10:root
ftp::11:
mail::12:
uucp:x:14:
log::19:root
smmsp::25:
http:x:33:
games::50:
dbus:x:81:
hal:x:82:
avahi:x:84:
network:x:90:
video:x:91:
audio::92:florian,mpd
optical::93:hal,florian
floppy:x:94:hal
storage:x:95:hal
scanner:x:96:florian
camera:x:97:florian
power:x:98:
nobody::99:
users::100:florian
mpd:x:500:
florian:x:1000:
tex:x:1001:
Gruß, Florian
hab den Thread schon mal vor ein paar Tagen in linuxforen.de aufgemacht (http://www.linuxforen.de/forums/showthread.php?t=259129), weil das Thema hier eigentlich nicht so recht reinpasst. Allerdings habe ich dort keine Antwort erhalten, bin mir aber ziemlich sicher, dass mir hier irgendjemand helfen kann.
Und zwar habe ich ein Problem mit der Verwendung von join. Ich will die Datei /etc/group mit der Ausgabe von id -g joinen um den Namen meiner Benutzergruppe zu erhalten (ich weiß, dass ich den auch leichter bekommen würde). Da in der Manpage von join steht, dass die beiden zu verbindenden Dateien nach dem Join-Kriterium sortiert sein müssen, lege ich hierzu eine sortierte Kopie von /etc/group an.
$ sort -t : -n -k 3 /etc/group > group.srt
Dann versuche ich zu joinen:
$ id -g
1000
$ id -g | join -t : -1 1 -2 3 -o 2.1 - group.srt
$
$ echo `id -g`:test | join -t : -1 1 -2 3 -o 2.1 - group.srt
$
, leider erscheint keine Ausgabe.
Wo liegt hier das Problem, bzw. was habe ich bei der Bedienung von join falsch gemacht?
Wenn ich das join-Kommando auf einem anderen System ausführe, erhalte ich folgende Fehlermeldung:
join: Datei 2 ist nicht sortiert
Allerdings ist die Datei 2 ja eigentlich nach dem join-Kriterium (Spalte 3) sortiert (mit Hilfe des sort-Aufrufs von weiter oben)? :confused:
Hier mal meine group.srt:
root::0:root
bin::1:root,bin,daemon
daemon::2:root,bin,daemon
sys::3:root,bin
adm::4:root,daemon
tty::5:
disk::6:root
lp::7:daemon
mem::8:
kmem::9:
wheel::10:root
ftp::11:
mail::12:
uucp:x:14:
log::19:root
smmsp::25:
http:x:33:
games::50:
dbus:x:81:
hal:x:82:
avahi:x:84:
network:x:90:
video:x:91:
audio::92:florian,mpd
optical::93:hal,florian
floppy:x:94:hal
storage:x:95:hal
scanner:x:96:florian
camera:x:97:florian
power:x:98:
nobody::99:
users::100:florian
mpd:x:500:
florian:x:1000:
tex:x:1001:
Gruß, Florian