Skip to main content
Participant
August 18, 2021
Answered

Import images to Lightroom via command line?

  • August 18, 2021
  • 1 reply
  • 1992 views

Is it possible to import images to Lightroom using the command line?

 

(I'm a developer and writing a Mac Automator script for myself, to handle tasks that Lightroom's import can't do--e.g. renaming file by a unique camera Id, updating the metadata.)

This topic has been closed for replies.
Correct answer johnrellis

"Is it possible to import images to Lightroom using the command line?"

 

Not directly, but you could implement it using the LR plugin SDK to implement a plugin:

 

- The plugin has a URL handler that responds to URLs of the form:

 

lightroom://com.myname.myplugin/path1,path2,...,pathn

 

- The URL handler calls catalog:addPhoto() to import the files passed as arguments in the URL to the catalog.

 

- Use "curl" or "wget" to invoke the URL from the command line.

 

While this would only be about 20 lines of code, the learning curve for the SDK is steep, even for experienced programmers, more so if you don't know Lua or Scheme. The concepts above are discussed in the LR SDK Programmers Guide.  Expect to take at least 6-10 hours minimum.

 

 

1 reply

johnrellis
johnrellisCorrect answer
Legend
August 18, 2021

"Is it possible to import images to Lightroom using the command line?"

 

Not directly, but you could implement it using the LR plugin SDK to implement a plugin:

 

- The plugin has a URL handler that responds to URLs of the form:

 

lightroom://com.myname.myplugin/path1,path2,...,pathn

 

- The URL handler calls catalog:addPhoto() to import the files passed as arguments in the URL to the catalog.

 

- Use "curl" or "wget" to invoke the URL from the command line.

 

While this would only be about 20 lines of code, the learning curve for the SDK is steep, even for experienced programmers, more so if you don't know Lua or Scheme. The concepts above are discussed in the LR SDK Programmers Guide.  Expect to take at least 6-10 hours minimum.

 

 

SilandAuthor
Participant
August 18, 2021

Thank you for explaining. That helps me understand, even though it doesn't sound easy.

 

Just so I understand: how would my script invoke the `lightroom://...` URL? Via calling `open  lightroom://...` in a terminal shell? (Source: Mac's open command.)

johnrellis
Legend
August 18, 2021

You could use "open", "wget", or "curl" to invoke the lightroom: URL.