Me gustaría convertir el contenido de una carpeta en entradas para los Números (o Excel) - hay una manera de automatizar haciendo esto?
Respuestas
¿Demasiados anuncios?Usted puede utilizar Automator.aplicación para crear un servicio de buscador.
Abrir Automator.
- Crear un nuevo servicio de documentos
- configurar el servicio recibe seleccionado Carpetas en el Finder
- Añadir un Obtener el contenido de la carpeta Acción.
Añadir un Get Ejecutar Applescript Acción.
reemplazar el archivo applescript contenido con el applescript a continuación.
.
on run {input, parameters}
set theCsv to ""
repeat with i from 1 to number of items in input
tell application "Finder" to set this_item to displayed name of item i of input
set this_item to this_item & ",\\n"
set theCsv to theCsv & this_item
end repeat
do shell script "echo " & quoted form of theCsv & " > ~/Desktop/names.csv"
end run
- guardar el documento
Ahora, cuando usted seleccione una carpeta en el finder puede utilizar el menú contextual para ejecutar el servicio en la carpeta.
Se va a crear una .archivo csv en su escritorio de la lista. Que se abrirá en los Números.
Nota: si usted tiene más de una carpeta en la que se va a crear una lista única para ambos. Es posible tener sólo el trabajo en la primera carpeta o individualmente
ACTUALIZACIÓN:
Un rápido ejemplo de applescript para trabajar en múltiples carpetas en la selección. Esto creará un archivo individual para cada directorio en el buscador de selección
on run {input, parameters}
set theCsv to ""
set pathList to {}
repeat with i from 1 to number of items in input
tell application "Finder" to set the Cpath to container of item i of input as alias
if (Cpath as alias) is not in pathList then
copy Cpath to end of pathList
end if
end repeat
repeat with a from 1 to number of items in pathList
set this_item to item a of pathList
set thisFileName to ""
tell application "Finder" to set thisFileName to displayed name of (this_item as alias)
set the CSVpath to ""
repeat with i from 1 to number of items in input
tell application "Finder"
set the Cpath to container of item i of input as alias
if container of item i of input as alias is this_item then
set theName to displayed name of item i of input & ",\\n"
set CSVpath to CSVpath & theName
end if
end tell
end repeat
do shell script "echo " & quoted form of CSVpath & " > ~/Desktop/" & quoted form of thisFileName & ".csv"
end repeat
end run
UPDATE 2. Este segundo ejemplo ahora utiliza el nombre de la carpeta como el nombre para el archivo
La forma más fácil (pero de algún modo manual) forma es seleccionar todos los archivos en el Finder, copiar al portapapeles con Cmd-C y, a continuación, pegar los nombres en un número de la hoja con Cmd-V.
Si desea más control, puede volver a la Terminal para la copia de paso y ejecutar
cd /some/folder
ls *.jpeg | pbcopy
para obtener el nombre de todos los archivos jpeg en esta carpeta en el portapapeles.