Tampoco puede cambiar el nombre de un archivo al nombre propuesto, ya que contiene varios dos puntos ( :
), que son caracteres reservados (= prohibidos) en el sistema de archivos HFS +, y defaults write com.apple.screencapture ...
no permite un formato de fecha diferente.
Sin embargo, una idea es crear un agente de inicio para cambiar el nombre de todos los archivos en una carpeta dedicada que comienza con "Captura de pantalla ...":
Una solución muy simple, suponiendo que restaure la convención de nomenclatura predeterminada para capturas de pantalla y reemplace nombre_usuario por su nombre corto a continuación, es:
Cree un archivo llamado "screencaprn" en, por ejemplo, / usr / local / bin con el contenido:
#!/bin/bash
mv /Users/user_name/Desktop/Screen\ Shot*.png /Users/user_name/Desktop/"'date "+%Y-%m-%d-%H.%M.%S"'.png"; $2>/dev/null
Cambiar permisos:
chmod +x /usr/local/bin/screencaprn
Luego cree un agente de inicio en ~ / Library / LaunchAgents con el nombre "usr.screenshot.rename.plist" y el contenido:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>usr.screenshot.rename</string>
<key>ProgramArguments</key>
<array>
<string>/bin/bash</string>
<string>-c</string>
<string>/usr/local/bin/screencaprn</string>
</array>
<key>WatchPaths</key>
<array>
<string>/Users/user_name/Desktop</string>
</array>
</dict>
</plist>
Luego carga el plist con:
launchctl load ~/Library/LaunchAgents/usr.screenshot.rename.plist
Esto funciona pero tiene un retraso de hasta 10 segundos (por lo tanto, cambia los segundos y, a veces, los minutos del archivo de captura de pantalla con el nombre original, por ejemplo, Captura de pantalla 2016-09-03 a las 03.24. 02 .png a 2016-09-03-03.24. 05 .png ) y agrega una com.apple.xpc.launchd [1] (usr.screenshot.rename): el servicio solo se ejecutó durante X segundos. Presionando el respawn out por Y segundos. línea en el registro del sistema.