lsof no muestra todos los files abiertos en la aplicación Vista previa

Tengo aproximadamente 43 files abiertos en la vista previa, sin embargo, cuando ejecuto lsof -c Preview , solo obtengo una fracción de esos (es decir, 8 files) que están abiertos actualmente.

Este es el mismo resultado que obtengo cuando uso el Monitor de actividad, pero me gustaría save la list completa de files abiertos para poder volver a abrir esta list de files más adelante.

  • Instalar InkScape sin XQuartz
  • ¿Cómo descargo un file de audio de Facebook Messenger?
  • ¿Cómo debo corregir los propietarios y los permissions en una carpeta de usuario de OS X?
  • ¿Mdfind permite búsquedas de comodines en nombre de file?
  • ¿Es posible orderar las counts de usuario en el cuadro de dialog de inicio de session?
  • Controlador Xerox 3117 para OS X Yosemite
  • He encontrado algunos consejos sobre cómo recuperar la list de files actuales abiertos en este enlace .

    ¿Alguien tiene una pista de lo que puede estar pasando? Otra solución que sería útil es recuperar la list de files que se abrieron en la última sección de Vista previa.

    EDITAR:

    Como comentó DA Vincent, es posible que los files se cierren después de cargarse en la memory. Si es posible hacer un observador de los files abiertos por la vista previa y registrarlos en un file, esta sería una solución adecuada también. Especialmente si este subprocess de vigilante se puede iniciar cuando se inicie el usuario o se inicie el sistema operativo.

  • Sincronizar atajos de keyboard entre computadoras macOS
  • ¿Cómo eliminar todas las aplicaciones mobilees de iOS en iTunes, excepto las que se están utilizando?
  • Falta la obra del artista en iTunes
  • ¿Cómo puedo mover el button de la barra de herramientas de descargas en Safari 5.1 y más reciente en OS X?
  • ¿Las Mac almacenan un número de serie en el disco?
  • Forzar / Hacer que la aplicación se ejecute en una versión inferior de Mac OSX
  • One Solution collect form web for “lsof no muestra todos los files abiertos en la aplicación Vista previa”

    Aquí hay una solución de manzanas. Esto debería proporcionarle una list completa de files abiertos (incluida la ruta completa) en la aplicación de vista previa.

    Además, si algún gurú de AppleScript encuentra esta respuesta, le agradecería cualquier crítica constructiva que pueda ofrecer. 🙂

     set text item delimiters to "\n" set myList to {} tell application "Preview" set theDocs to get documents repeat with eachDoc in theDocs set thePath to path of eachDoc copy thePath to end of myList end repeat end tell set the_list to myList as text tell application "Finder" set myFile to "/Users/YourName/YourFolder/FileName.txt" do shell script "date >> " & myFile do shell script "echo " & quoted form of the_list & " >> " & myFile end tell 

    Esto imprimirá la date actual seguida de una list de cada documento abierto en Vista previa. Si prefiere omitir la date, simplemente elimine la línea:

     do shell script "date >> " & myFile 

    Asegúrese de completar la información correcta en la línea:

     set myFile to "/Users/YourName/YourFolder/FileName.txt" 

    Si desea agregar un sello de date a sus nombres de file, simplemente coloque las siguientes líneas debajo del bloque tell application "Finder"

     set time_stamp to (do shell script "date \"+%m-%d-%y\"") set myFile to "/Users/YourName/YourFolder/PreviewProfile_" & time_stamp & ".txt" 

    El command de date terminal tiene muchos formattings diferentes disponibles. Para leer sobre las diferentes opciones disponibles, abra su terminal y escriba man strftime .

    Después de jugar un poco más, me doy count de que este guión puede simplificarse aún más. Esta es una versión más simplificada que evita algunos pasos innecesarios del original. Pero el resultado es el mismo de cualquier manera.

     set text item delimiters to "\n" tell application "Preview" set theDocs to get path of every document as text tell application "Finder" set time_stamp to (do shell script "date \"+%m-%d-%y\"") set myFile to "/Users/YourName/YourFolder/PreviewProfile_" & time_stamp & ".txt" do shell script "echo " & quoted form of theDocs & " >> " & myFile end tell end tell 

    Para facilitar el uso, puede save esta secuencia de commands como un service de Automator para usar mientras trabaja en cualquier aplicación. Para hacerlo, solo abra Automator , luego en el menu Archivo , select Nuevo o ⌘N del keyboard. Luego select Servicio de las opciones que se muestran. Cuando se abra el documento, select Utilidades en la columna de la izquierda. Luego, select Ejecutar AppleScript en la columna a la derecha de eso. Pegue esta secuencia de commands en el cuadro que aparece. En las opciones desplegables cerca de la parte superior de la página, select Servicio no recibe ninguna input y en cualquier aplicación . Luego solo elija y nombre, guarde el file y debe tener un service disponible para usar en cualquier momento en el menu de services.

    Actualizar

    Aquí hay una forma de leer y abrir la list de files que acabamos de crear. Esto le permitirá seleccionar y elegir qué files desea abrir sin tener que abrir todos los files en la list si no desea.

     tell application "Finder" set file_list to {} set my_files to paragraphs of (read "/Users/YourName/path/to/YourFile") repeat with nextLine in my_files if length of nextLine is greater than 0 then copy nextLine to the end of file_list end if end repeat choose from list file_list with multiple selections allowed set chosen_Files to the result repeat with next_file in chosen_Files do shell script "open " & next_file end repeat end tell 

    Espero eso ayude. Hasme saber si tienes algunos problemas.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).