¿Cómo puedo encontrar el windowid para pasar a screencapture -l?

22

La utilidad de línea de comandos screencapture afirma poder capturar una sola ventana sin necesidad de interacción, pero no puedo saber qué pasar.

-l<windowid> capture this windowsid

No es el ID de proceso de la aplicación.

    
pregunta Gareth Simpson 16.07.2012 - 20:06

3 respuestas

18

Para algunas aplicaciones puedes usar AppleScript:

screencapture -l$(osascript -e 'tell app "Safari" to id of window 1') test.png

No funciona con Chrome sin embargo.

Las ID también se muestran en la depuración de cuarzo (disponible en developer.apple.com/downloads ) si ejecuta defaults write com.apple.QuartzDebug QuartzDebugPrivateInterface -bool true .

    
respondido por el user495470 16.07.2012 - 20:49
8

Escribí una pequeña utilidad de línea de comandos para recuperar el ID de Windows para aplicaciones que no son compatibles con AppleScript. Consíguelo aquí: enlace

Luego puede capturar una ventana específica especificando el nombre del paquete y el título de la ventana:

screencapture -l$(./GetWindowID "Vuo Editor" "untitled composition") VuoEditorWindow.png
    
respondido por el smokris 02.06.2013 - 20:21
4

Escribí una utilidad de línea de comandos que se ajusta a screencapture y la biblioteca de ventanas de Quartz.

Agárralo aquí: enlace

Úsalo así:

./screencapture.py Chrome -t Stack Overflow
    
respondido por el thismachinechills 22.03.2015 - 17:10

Lea otras preguntas en las etiquetas