Estoy tratando de abrir todos los archivos PDF en una carpeta desde la Terminal.
Cuando lo hago
open *.pdf
Vista previa (mi aplicación PDF predeterminada), abre solo uno de ellos.
¿Hay alguna manera de obtener Vista previa para abrirlos todos?
Si no, ¿qué otro visor de PDF funciona bien para esto?
¡Gracias!
Ejecutando Sierra 10.12.6 en un MB Pro.
Si solo desea abrir una lista de archivos PDF a la vez, solo necesita separar los nombres de los archivos (entre comillas) por un espacio de la siguiente manera:
open "file1.pdf" "file2.pdf" ... "fileN.pdf"
Esto abrirá todos los PDF especificados en una línea.
Si desea abrir todos los PDF en un directorio en particular, use el comando (bucle for/do simple):
for file in /Path_to_Directory/*.pdf; do open "${file}"; done
Ambos ejemplos anteriores usan la aplicación predeterminada asociada con el archivo (Vista previa). Si desea especificar una aplicación en particular (tal vez tenga un visor de PDF diferente pero quiera usar la Vista previa), use la -a
bandera y especifique la aplicación:
for file in /Path_to_Directory/*.pdf; do open -a Preview.app "${file}"; done
Nota: asegúrese de escribir el nombre de la variable entre comillas (") para tener en cuenta los espacios y los caracteres que no se pueden imprimir. Por ejemplo, si tiene un archivo llamado "Mi archivo PDF.pdf", si no incluye las comillas, el comando intente abrir cada cadena ("Mi", "PDF" y "Archivo") como archivos separados.
open "file1.pdf" "file2.pdf" is exactly the same as
abre el archivo*.pdf`La página de manual paraopen
en Sierra todavía dice:
You can specify one or more file names (or pathnames), which are inter-
preted relative to the shell or Terminal window's current working direc-
tory. For example, the following command would open all Word files in the
current working directory:
open *.doc
Opened applications inherit environment variables just as if you had
launched the application directly through its full path. This behavior
was also present in Tiger.
Eso significa que su enfoque inicial suele ser también el correcto. Eso es "generalmente" como en: este open
comando tiene errores (y la vista previa también tiene errores).
Si sus archivos PDF tienen nombres de archivo 'adecuados', entonces todo está bien y en un directorio con 20 archivos PDF, todos los archivos PDF se abrirán de la manera que promete la página de manual.
Sin embargo, si hay nombres de archivo 'divertidos', permitidos legalmente (o representados de manera diferente en el sistema de archivos) en HFS+ pero conocidos por ser 'difíciles' en un entorno shell, surgen problemas.
La función de englobamiento para abrir está rota. Si, por ejemplo, un nombre de archivo comienza con -
(signo menos), el siguiente carácter se interpreta como otra opción para el open
comando. Dado que no hay muchas opciones disponibles para el open
comando, a menudo se produce un error. Los espacios en los nombres de archivo, todo lo que necesitaría escapar en un comando de shell normal, parece ser problemático para este comando.
Otros errores a observar son que el uso de la opción open -a Preview.app
no funciona como cabría esperar. Además, parece que Preview no respeta sus preferencias sobre si los documentos recién abiertos deben tener su propia ventana. La vista previa abre varios archivos PDF con un simple open *.pdf
pero todos esos documentos se "ocultan" en la barra lateral de una sola ventana compartida. Luego debe hacer clic en los triángulos para revelar que ahora hay varios archivos abiertos.
Una cantidad de archivos con nombres limpios en un solo directorio de trabajo al que se accede a través open *.pdf
de Preview.app configurado como su visor de PDF predeterminado los abrirá todos (bueno, no verifiqué un límite superior probable en esto...)
Eso deja ahora las siguientes opciones:
open -a Preview.app
open *.pdf
. Ahora, los abre en múltiples ventanas. Pero open *.jpg
se abrirá en una sola ventana.
izq.
Patricio
código
open *.jpg