Je possède un disque externe Firewire que j'utilise comme espace de
stockage annexe, et qui n'est donc pas systématiquement monté sur mon
Mac.
Quand je souhaite l'utiliser, je lance l'utilitaire de disque, qui
recherche tous les disques connectés et me permet donc de monter la
partoche correspondante.
Or j'aimerais me concocter un petit script que je collerais dans le dock
et qui me monterait automatiquement ce disque-là /sans/ m'obliger à
lancer l'utilitaire de disque à la main... et je n'y arrive pas !
Je ne suis pas grand connaisseur des choses du Terminal, mais j'ai
repéré la commande "diskutil" (qui correspond à l'Utilitaire de disque).
Quand je tape "diskutil mount /Volumes/Local250Go", ça ne fonctionne
pas. Ça ne marche que si je tape "diskutil mount /dev/disk3s3", mais
puis-je être certain que "disk3s3" sera toujours attribué à cette
partition-là ? J'ai un doute...
Bref, si vous avez une idée pour écrire un script "tout terrain"...
--
[SbM]
<http://sebastienmarty.free.fr> - <http://tradintosh.free.fr>
<http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr>
"If the French were really intelligent, they'd speak English" (W. Sheed)
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
daniel patin
Franck wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton disque monté, tu crée un alias de ce disque et tu pourras le monter en principe d'un double clic. je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai pas testé en firewire
-- daniel.patin (et non pas marcel.dugenou) http://leinad-fr.net le blog http://www.daniel-patin.net sur mon mac http://daniel.patin.adsl.free.fr/ quelques photos
Franck wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton
disque monté, tu crée un alias de ce disque et tu pourras le monter en
principe d'un double clic.
je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai
pas testé en firewire
--
daniel.patin (et non pas marcel.dugenou)
http://leinad-fr.net le blog
http://www.daniel-patin.net sur mon mac
http://daniel.patin.adsl.free.fr/ quelques photos
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton disque monté, tu crée un alias de ce disque et tu pourras le monter en principe d'un double clic. je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai pas testé en firewire
-- daniel.patin (et non pas marcel.dugenou) http://leinad-fr.net le blog http://www.daniel-patin.net sur mon mac http://daniel.patin.adsl.free.fr/ quelques photos
sebastienmarty
daniel patin wrote:
Franck wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton disque monté, tu crée un alias de ce disque et tu pourras le monter en principe d'un double clic. je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai pas testé en firewire
Je viens d'essayer : ça ne marche pas, il ne trouve pas le disque. L'idée était sympa et me plaisait bien, pourtant... dommage... Merci quand même.
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
daniel patin <marcel.dugenou@free.fr> wrote:
Franck wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton
disque monté, tu crée un alias de ce disque et tu pourras le monter en
principe d'un double clic.
je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai
pas testé en firewire
Je viens d'essayer : ça ne marche pas, il ne trouve pas le disque.
L'idée était sympa et me plaisait bien, pourtant... dommage... Merci
quand même.
--
[SbM]
<http://sebastienmarty.free.fr> - <http://tradintosh.free.fr>
<http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr>
"If the French were really intelligent, they'd speak English" (W. Sheed)
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
ou peut etre plus simplement avec un alias: sur le bureau, tu as ton disque monté, tu crée un alias de ce disque et tu pourras le monter en principe d'un double clic. je dis en principe, car j'utilise ça pour du disque reseau, mais je n'ai pas testé en firewire
Je viens d'essayer : ça ne marche pas, il ne trouve pas le disque. L'idée était sympa et me plaisait bien, pourtant... dommage... Merci quand même.
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
sebastienmarty
Franck <franck+ wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le "disk3s3" (au bout de la dernière ligne) ?
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
Franck <franck+news@_remove_apoal.com> wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la
commande en ligne je patauge...). Quand je fais un "diskutil list",
j'obtiens en fin de liste un truc de ce genre :
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le "disk3s3" (au bout de la dernière ligne) ?
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
olivier.marti
SbM wrote:
Franck <franck+ wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le "disk3s3" (au bout de la dernière ligne) ?
Grep permet d'extraire la bonne ligne. Après c'est différent, avec des pipe (par option-maj-L):
diskutil list | grep Secours | awk '{print $6}'
Je ne promet pas que ça marche si le nom du disque contient un blanc. Peut-être faut-il imprimer le 7ème champ au lieu du 6ème dans ce cas.
Olivier
SbM <sebastienmarty@yahoo.fr> wrote:
Franck <franck+news@_remove_apoal.com> wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la
commande en ligne je patauge...). Quand je fais un "diskutil list",
j'obtiens en fin de liste un truc de ce genre :
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Grep permet d'extraire la bonne ligne. Après c'est différent, avec des pipe (par option-maj-L):
diskutil list | grep Secours | awk '{print $6}'
Je ne promet pas que ça marche si le nom du disque contient un blanc. Peut-être faut-il imprimer le 7ème champ au lieu du 6ème dans ce cas.
Olivier
Si le formatage ne change pas, le nom qu tu cherches est toujours après le 59 charactère de la ligne, donc tu peux essayer :
diskutil list | grep Secours | cut -c 59-80
Olivier
Franck
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Bon alors vite fait (les pro du script apporteront sans doute leurs modifications ;-) ca doit ressembler à ça en bash :
#!/bin/bash
if [ $# != 1 ]; then echo "Usage : $0 volume_name" exit fi
DEVICE=`diskutil list | grep $1 | sed -ne "s/.*(disk.*)$/1/p"`
if [ "x$DEVICE" == "x" ]; then echo "Volume $1 not found" else diskutil mount /dev/$DEVICE fi
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la
commande en ligne je patauge...). Quand je fais un "diskutil list",
j'obtiens en fin de liste un truc de ce genre :
Bon alors vite fait (les pro du script apporteront sans doute leurs
modifications ;-) ca doit ressembler à ça en bash :
#!/bin/bash
if [ $# != 1 ]; then
echo "Usage : $0 volume_name"
exit
fi
DEVICE=`diskutil list | grep $1 | sed -ne "s/.*(disk.*)$/1/p"`
if [ "x$DEVICE" == "x" ]; then
echo "Volume $1 not found"
else
diskutil mount /dev/$DEVICE
fi
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Bon alors vite fait (les pro du script apporteront sans doute leurs modifications ;-) ca doit ressembler à ça en bash :
#!/bin/bash
if [ $# != 1 ]; then echo "Usage : $0 volume_name" exit fi
DEVICE=`diskutil list | grep $1 | sed -ne "s/.*(disk.*)$/1/p"`
if [ "x$DEVICE" == "x" ]; then echo "Volume $1 not found" else diskutil mount /dev/$DEVICE fi
Franck
diskutil list | grep Secours | awk '{print $6}'
Je ne promet pas que ça marche si le nom du disque contient un blanc. Peut-être faut-il imprimer le 7ème champ au lieu du 6ème dans ce cas.
J'avoue ne jamais penser à awk.... bien plus simple que sed pourtant (voir mon exemple de script :-p )
diskutil list | grep Secours | awk '{print $6}'
Je ne promet pas que ça marche si le nom du disque contient un blanc.
Peut-être faut-il imprimer le 7ème champ au lieu du 6ème dans ce cas.
J'avoue ne jamais penser à awk.... bien plus simple que sed pourtant
(voir mon exemple de script :-p )
Je ne promet pas que ça marche si le nom du disque contient un blanc. Peut-être faut-il imprimer le 7ème champ au lieu du 6ème dans ce cas.
J'avoue ne jamais penser à awk.... bien plus simple que sed pourtant (voir mon exemple de script :-p )
sebastienmarty
Olivier Marti wrote:
SbM wrote:
Franck <franck+ wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le "disk3s3" (au bout de la dernière ligne) ?
Grep permet d'extraire la bonne ligne. Après c'est différent, avec des pipe (par option-maj-L):
diskutil list | grep Secours | awk '{print $6}'
Je viens d'essayer ça en direct dans le Terminal, ça marche nickel, ça me renvoie "disk3s3". Grand merci donc. Reste plus qu'un souci pour moi, novice en la matière : comment rebalancer cette valeur dans une commande "diskutil mount" ?
Si je regarde le script de Franck (merci aussi à lui pour ses efforts ;-), ça pourrait donner un truc du style :
#!/bin/bash DEVICE=`diskutil list | grep Local250Go | awk '{print $6}'` diskutil mount /dev/$DEVICE
J'ai bon ? ;-)
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
Olivier Marti <olivier.marti@ensta.org> wrote:
SbM <sebastienmarty@yahoo.fr> wrote:
Franck <franck+news@_remove_apoal.com> wrote:
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un
"diskutil list" pour avoir la liste de toutes les partitions de tous les
disques, en recherchant le nom de volume désiré (avec grep au hasard),
puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la
commande en ligne je patauge...). Quand je fais un "diskutil list",
j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le
"disk3s3" (au bout de la dernière ligne) ?
Grep permet d'extraire la bonne ligne. Après c'est différent, avec des
pipe (par option-maj-L):
diskutil list | grep Secours | awk '{print $6}'
Je viens d'essayer ça en direct dans le Terminal, ça marche nickel, ça
me renvoie "disk3s3". Grand merci donc. Reste plus qu'un souci pour moi,
novice en la matière : comment rebalancer cette valeur dans une commande
"diskutil mount" ?
Si je regarde le script de Franck (merci aussi à lui pour ses efforts
;-), ça pourrait donner un truc du style :
#!/bin/bash
DEVICE=`diskutil list | grep Local250Go | awk '{print $6}'`
diskutil mount /dev/$DEVICE
J'ai bon ? ;-)
--
[SbM]
<http://sebastienmarty.free.fr> - <http://tradintosh.free.fr>
<http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr>
"If the French were really intelligent, they'd speak English" (W. Sheed)
Bref, si vous avez une idée pour écrire un script "tout terrain"...
Ca doit pouvoir se faire assez facilement, en commençant par un "diskutil list" pour avoir la liste de toutes les partitions de tous les disques, en recherchant le nom de volume désiré (avec grep au hasard), puis en extrayant la dernière colonne "DEVICE" de la ligne obtenue
Suffit alors de monter /dev/DEVICE
Le problème c'est que je ne maîtrise absolument pas grep (déjà que la commande en ligne je patauge...). Quand je fais un "diskutil list", j'obtiens en fin de liste un truc de ce genre :
Quelle syntaxe dois-je utiliser avec la commande grep pour extraire le "disk3s3" (au bout de la dernière ligne) ?
Grep permet d'extraire la bonne ligne. Après c'est différent, avec des pipe (par option-maj-L):
diskutil list | grep Secours | awk '{print $6}'
Je viens d'essayer ça en direct dans le Terminal, ça marche nickel, ça me renvoie "disk3s3". Grand merci donc. Reste plus qu'un souci pour moi, novice en la matière : comment rebalancer cette valeur dans une commande "diskutil mount" ?
Si je regarde le script de Franck (merci aussi à lui pour ses efforts ;-), ça pourrait donner un truc du style :
#!/bin/bash DEVICE=`diskutil list | grep Local250Go | awk '{print $6}'` diskutil mount /dev/$DEVICE
J'ai bon ? ;-)
-- [SbM] <http://sebastienmarty.free.fr> - <http://tradintosh.free.fr> <http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr> "If the French were really intelligent, they'd speak English" (W. Sheed)
Franck
Si je regarde le script de Franck (merci aussi à lui pour ses efforts ;-), ça pourrait donner un truc du style :
#!/bin/bash DEVICE=`diskutil list | grep Local250Go | awk '{print $6}'` diskutil mount /dev/$DEVICE
J'ai bon ? ;-)
Oui :-)
Si je regarde le script de Franck (merci aussi à lui pour ses efforts
;-), ça pourrait donner un truc du style :
#!/bin/bash
DEVICE=`diskutil list | grep Local250Go | awk '{print $6}'`
diskutil mount /dev/$DEVICE