Quoting David Haller
On Fri, 15 Feb 2002, Juergen Descher wrote:
(wie) kann man feststellen auf welchem gemounteten Filesystem/Partition eine Datei oder ein Verzeichnis liegt (ext2) ?
==== on_which_fs.sh (spontan hingetippt, minimal getestet) ==== [...]
ja es kann soo einfach sein wenn man sich mit den Befehlen wie z.B.: dirname, pwd -P auskennt :))
Fehlt ne noch die Behandlung von symlinks (ggfs. mit Option)... Sollte aber als Anregung reichen...
Danke! In der zwischenzeit habe ich ja doch noch eine Idee gehabt, stat von C ist mir eingefallen, gibts ja auch in perl. Auch schnell getippt und nicht so elegant aber ich poste es mal um noch einen der vielen Wege nach Rom zu zeigen. Ist Linux mit seinen vielen Werkzeugen nicht schön ?-) #!/usr/bin/perl -w # USAGE: lsfdev [FILE] [DIR] ... @am=split(/\n/, `mount`); # get mounted filesystems foreach(@am) { if( $_ =~ /^\/dev\// ) { # we are interested in devices only @tmp = split(/ /,$_); (($dev) = (stat($tmp[2]))[0]) # get the device (numeric) || die "$tmp[2]: stat error"; $h{$dev} = [$tmp[0],$tmp[2]]; # make a new hash-entry for # the numeric device # [0] -> alphanumeric device # [1] -> mountpoint } } while ($#ARGV >= 0) { my $file = shift(@ARGV); (($dev) = (stat($file))[0]) # get device of file (numeric) || die "$file: stat error"; print "$file:\n"; print "device: $h{$dev}[0]\n"; # use the hasharray for output print "mount point: $h{$dev}[1]\n"; } cu Juergen