Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
En clair, un truc qui me permette de faire :
$ mount
[...]
/dev/hda5 on /usr type ext3 (rw)
$ cd /
$ mon_script
/etc est sur le même disque
/home est sur le même disque
[...]
/usr n'est pas sur le même disque
Je n'ai rien vu dans les options de test(1), y'a que -d. Je pourrais bien
sûr faire une bidouille en allant lire /etc/mtab pour y trouver tous les
volumes actuellement montés, mais ça me semble bien compliqué, est-ce que
je ne serais pas en train de rater un truc plus simple ?
Merci !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
DINH Viêt Hoà
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
En clair, un truc qui me permette de faire :
$ mount
[...]
/dev/hda5 on /usr type ext3 (rw)
$ cd /
$ mon_script
/etc est sur le même disque
/home est sur le même disque
[...]
/usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage. [...]
Je n'ai rien vu dans les options de test(1), y'a que -d. Je pourrais bien sûr faire une bidouille en allant lire /etc/mtab pour y trouver tous les volumes actuellement montés, mais ça me semble bien compliqué, est-ce que je ne serais pas en train de rater un truc plus simple ?
Peut-être en comparant le résultat d'un 'df' sur le répertoire et sur son parent (en ne s'intéressant qu'au point de montage car les valeurs d'occupation peuvent changer)... mais ce n'est pas vraiment portable.
df / /usr df / /etc
-- Paul Gaborit - <http://www.enstimac.fr/~gaborit/>
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
[...]
Je n'ai rien vu dans les options de test(1), y'a que -d. Je pourrais bien
sûr faire une bidouille en allant lire /etc/mtab pour y trouver tous les
volumes actuellement montés, mais ça me semble bien compliqué, est-ce que
je ne serais pas en train de rater un truc plus simple ?
Peut-être en comparant le résultat d'un 'df' sur le répertoire et sur son
parent (en ne s'intéressant qu'au point de montage car les valeurs
d'occupation peuvent changer)... mais ce n'est pas vraiment portable.
df / /usr
df / /etc
--
Paul Gaborit - <http://www.enstimac.fr/~gaborit/>
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage. [...]
Je n'ai rien vu dans les options de test(1), y'a que -d. Je pourrais bien sûr faire une bidouille en allant lire /etc/mtab pour y trouver tous les volumes actuellement montés, mais ça me semble bien compliqué, est-ce que je ne serais pas en train de rater un truc plus simple ?
Peut-être en comparant le résultat d'un 'df' sur le répertoire et sur son parent (en ne s'intéressant qu'au point de montage car les valeurs d'occupation peuvent changer)... mais ce n'est pas vraiment portable.
df / /usr df / /etc
-- Paul Gaborit - <http://www.enstimac.fr/~gaborit/>
JustMe
DINH Viêt Hoà wrote:
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
ls -i t'affiche le numéro d'inode.
ou "man stat" (1) puisque tu es sous linux.
un bete : df <nom du repertoire> | tail -1 | sed 's/ .*//' te donnera le device qui contient le repertoire en question
donc ton script va donner :
#!/bin/sh
device() { df "$1" | tail -1 | sed 's/ .*//' }
ROOTD=`device .`
for dir in * do if [ -d "$dir" ] then DEV=`device "$dir"`
if [ "$DEV" = "$ROOT" ] then echo "$dir est sur le meme disque" else echo "$dir n'est pas sur le meme disque" fi fi done
pas exemple
DINH Viêt Hoà wrote:
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
En clair, un truc qui me permette de faire :
$ mount
[...]
/dev/hda5 on /usr type ext3 (rw)
$ cd /
$ mon_script
/etc est sur le même disque
/home est sur le même disque
[...]
/usr n'est pas sur le même disque
ls -i t'affiche le numéro d'inode.
ou "man stat" (1) puisque tu es sous linux.
un bete :
df <nom du repertoire> | tail -1 | sed 's/ .*//'
te donnera le device qui contient le repertoire en question
donc ton script va donner :
#!/bin/sh
device()
{
df "$1" | tail -1 | sed 's/ .*//'
}
ROOTD=`device .`
for dir in *
do
if [ -d "$dir" ]
then
DEV=`device "$dir"`
if [ "$DEV" = "$ROOT" ]
then
echo "$dir est sur le meme disque"
else
echo "$dir n'est pas sur le meme disque"
fi
fi
done
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
ls -i t'affiche le numéro d'inode.
ou "man stat" (1) puisque tu es sous linux.
un bete : df <nom du repertoire> | tail -1 | sed 's/ .*//' te donnera le device qui contient le repertoire en question
donc ton script va donner :
#!/bin/sh
device() { df "$1" | tail -1 | sed 's/ .*//' }
ROOTD=`device .`
for dir in * do if [ -d "$dir" ] then DEV=`device "$dir"`
if [ "$DEV" = "$ROOT" ] then echo "$dir est sur le meme disque" else echo "$dir n'est pas sur le meme disque" fi fi done
pas exemple
Did0
Remi Moyen writes:
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
En clair, un truc qui me permette de faire :
$ mount
[...]
/dev/hda5 on /usr type ext3 (rw)
$ cd /
$ mon_script
/etc est sur le même disque
/home est sur le même disque
[...]
/usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
En clair, un truc qui me permette de faire : $ mount [...] /dev/hda5 on /usr type ext3 (rw) $ cd / $ mon_script /etc est sur le même disque /home est sur le même disque [...] /usr n'est pas sur le même disque
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Et en jouant avec find et les option xdev et maxdepth ? Placer le script dans le parent et regarder si on trouve le fils
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
Et en jouant avec find et les option xdev et maxdepth ?
Placer le script dans le parent et regarder si on trouve le fils
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Et en jouant avec find et les option xdev et maxdepth ? Placer le script dans le parent et regarder si on trouve le fils
merci de contribuer à la légende qui fait croire que perl est illisible !
pfff. ca vaut pas l'APL !
Remi Moyen
On Tue, 20 Apr 2004, Remi Moyen wrote:
Salut,
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Merci pour toutes vos réponses !
Je vais laisser tomber le truc perl, pas tant pour la complexité de la commande, mais plus parce que d'une part je ne connais pas perl (et j'ai pas envie de m'y mettre) et d'autre part il me semble relativement lourd de lancer l'interpréteur perl pleins de fois là où des appels à des commandes simples donne le même résultat.
Sinon, j'avais pas pensé à jouer avec df, et je ne connaissais pas stat, mais j'ai tout ce qui me faut pour que je puisse bidouiller tout seul ! -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Tue, 20 Apr 2004, Remi Moyen wrote:
Salut,
Je cherche un moyen, dans un script shell, de tester si le contenu d'un
répértoire est situé sur le même volume physique que son parent, ou si
c'est au contraire un point de montage.
Merci pour toutes vos réponses !
Je vais laisser tomber le truc perl, pas tant pour la complexité de la
commande, mais plus parce que d'une part je ne connais pas perl (et j'ai
pas envie de m'y mettre) et d'autre part il me semble relativement lourd
de lancer l'interpréteur perl pleins de fois là où des appels à des
commandes simples donne le même résultat.
Sinon, j'avais pas pensé à jouer avec df, et je ne connaissais pas stat,
mais j'ai tout ce qui me faut pour que je puisse bidouiller tout seul !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Je cherche un moyen, dans un script shell, de tester si le contenu d'un répértoire est situé sur le même volume physique que son parent, ou si c'est au contraire un point de montage.
Merci pour toutes vos réponses !
Je vais laisser tomber le truc perl, pas tant pour la complexité de la commande, mais plus parce que d'une part je ne connais pas perl (et j'ai pas envie de m'y mettre) et d'autre part il me semble relativement lourd de lancer l'interpréteur perl pleins de fois là où des appels à des commandes simples donne le même résultat.
Sinon, j'avais pas pensé à jouer avec df, et je ne connaissais pas stat, mais j'ai tout ce qui me faut pour que je puisse bidouiller tout seul ! -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."