Automatizó la tarea de las asociaciones de archivos, es decir, la elección del programa que abrirá el archivo desde Explorer / Finder. Y compartiendo.
Primero, los problemas. Los archivos de las extensiones deseadas a menudo no se abren por defecto con nada, y si se abren, entonces algunos iTunes. En Windows, las asociaciones necesarias se pierden por completo al instalar (o incluso desinstalar) programas: demuele, solía ser, GIMP, y los archivos ico se transfieren desde el visor de archivos habitual a la Galería de fotos estándar. Por qué Por qué Es desconocido ... ¿Y si encuentra un nuevo editor o, por varias razones, una nueva instalación? ¿Y si la computadora no está sola? En general, hacer clic con el mouse en los cuadros de diálogo es un entretenimiento.
En cambio, guardé dos archivos en Dropbox y ahora puedo llevar el mundo de la computadora a su estado familiar casi al instante. Y lo que ha estado esperando durante tantos años ... Lo siguiente es la receta para Windows y macOS.
Ventanas
En la consola de Windows cmd.exe
esto se realiza en dos etapas:
ftype my_file_txt="C:\Windows\notepad.exe" "%1" assoc .txt=my_file_txt
Los cambios surten efecto de inmediato. A pesar de que la asociación está registrada para el usuario actual, debe ejecutar estos comandos por algún motivo con derechos de administrador. Y no olvide duplicar el símbolo de porcentaje (%% 1) cuando comience desde un archivo bat. El mundo mágico de Windows 7 Ultimate 64-bit ...
UPD Los experimentos mostraron que las manipulaciones con ftype / assoc afectan a todos los usuarios de la máquina (nuestra oficina editorial no esperaba ese cambio). Sin embargo, el esquema sigue siendo operativo. Pero descubriré cómo no afectar al resto.
macOS
En makoshi, es conveniente establecer asociaciones con la utilidad holandesa . Se instala a través de brew install duti
. Ejemplo de uso:
duti -s com.apple.TextEdit .txt "editor"
Los cambios surten efecto de inmediato; no se requiere sudo. Aquí el argumento "com.apple.TextEdit" es el llamado "ID de paquete" del programa que necesitamos. El argumento "editor" es el tipo de asociación: "editor" para editar, "espectador" para ver, "todo" para todo.
Puede encontrar el "ID de paquete" de esta manera: si hay un "/ Aplicaciones / Sublime Text.app" de la tercera versión, entonces el paquete inactivo tendrá "com.sublimetext.3", bueno, o algún otro:
> osascript -e 'id of app "Sublime Text"' com.sublimetext.3
Probado en macOS Sierra.
Script final para Windows (.bat)
@echo off set XNVIEW=C:\Program Files (x86)\XnView\xnview.exe set SUBLIME=C:\Program Files\Sublime Text 3\sublime_text.exe set FOOBAR=C:\Program Files (x86)\foobar2000\foobar2000.exe call :assoc_ext "%SUBLIME%" txt md js json css java sh yaml call :assoc_ext "%XNVIEW%" png gif jpg jpeg tiff bmp ico call :assoc_ext "%FOOBAR%" flac fla ape wav mp3 wma m4a ogg ac3 goto :eof :assoc_ext set EXE=%1 shift :loop if "%1" neq "" ( ftype my_file_%1=%EXE% "%%1" assoc .%1=my_file_%1 shift goto :loop ) goto :eof
Script final para macOS (.sh)