Estoy tratando de hacer algo que pensé que sería simple, pero después de investigarlo, siento que estoy a medio camino de afeitarme un yak , así que pido consejo. Quiero crear una secuencia de comandos que nos permita a mis colegas y a mí realizar búsquedas normales de Spotlight en un disco compartido, lo que, según la investigación, parece no ser fácil y se resuelve mejor con una secuencia de comandos que:
mdutil /Volumes/name -i on
: aparentementeLas partes en negrita son las partes con las que tengo problemas.
Problemas particulares que estoy teniendo:
name of every disk
entonces mount volume "path://to/volume"
, pero no me permite especificar el nombre, y soy cauteloso acerca de la coherencia con la que Mac nombrará automáticamente una ruta en un unidad compartida que no es de Mac. Quiero configurar el nombre del volumen para poder consultarlo cuando le diga a Spotlight qué volumen indexar, lo que parece imposible en AppleScript.Mi nivel de conocimiento de los volúmenes de Mac, etc. es bastante bajo, por lo que soy consciente de que puede haber entendido mal alguno de los anteriores.
OS X sigue estos pasos al montar una unidad: crea un dispositivo sin procesar en /dev/ (solo para discos locales), crea una carpeta en /Volumes/, luego monta la unidad en esa carpeta que acaba de crear. Ese paso de creación de carpetas es probablemente lo que lee. Al script de shell que vinculó le falta el siguiente comando:
mkdir /Volumes/somenetworkdir
Entonces el comando que vinculó funcionará, con los parámetros adecuados
mount -t smbfs -o username=RemoteUser //REMOTEHOST/directory /Volumes/somenetworkdir
set mountedVolumes to do shell script "ls /Volumes/"
if (mountedVolumes contains "thisDriveName") is false then
mount volume "afp://thisUsername:thisPassword@thisIPorHostname/thisDriveName"
end if
Puede verificar si un volumen está montado al verificar la salida del mount
comando:
mount | grep '/Volumes/SomeVolumeName'
Y puedes montarlo con open smb://...
. Por lo que su secuencia de comandos podría ser algo como esto
#!/bin/bash
server=my_server
share=SomeShare
user=my_username
pass=y_password
# ...
mount | grep -q "/Volumes/$share " || open smb://$user:$pass@$server/$share
# ...
El open smb://...
comando lo montará bajo el nombre del recurso compartido.
user56reinstatemonica8
mount
que parecen usarse& nameVar
para establecer el nombre, pero esto parece contradecir lo que he leído en otros lugares, por ejemplo, hints.macworld.com/article.php?story=20120211184732735