Skip to main content

Some find commands - useful for copying iCloud Photos to another service.

I've found these commands really helpful when navigating an iCloud Photo library on a Mac.

The native Photos Application on MacOS prohibits a lot of bulk file activity.  These commands should be run from Terminal.

Before starting, it's best to place yourself in the following directory

"/Users/**your username**/Pictures/Photos Library.photoslibrary"

This command is best executed from the "Masters" directory 

find . -iname  *.cr2  -exec ls -lh {} \;

It finds all CR2 files and reports the file sizes  

You could change the ls to a copy, say to copy the image to another folder, like another cloud drive. 


Find all file types outside a defined list, and filter those only in the Masters directory

find . -iname *.* | grep Masters | grep -v -i -E '\.jpg|\.jpeg|\.heic|\.png|\.cr2|\.gif|\.mp4' 



Find all file types IN a defined list, and filter those only in the Masters directory

find . -iname *.* | grep Masters | grep -i -E '\.jpg|\.jpeg|\.heic'



Count all jpg files 

find . -iname *.* | grep Masters | grep -i -E '\.jpg|\.jpeg' | wc -l

Note that counts could be one higher, best to check.   wc -l may also count the first . line 




Comments

Popular posts from this blog

Changing Password - in AD, when you're changing one of your other accounts, not the logged in account

  Use Powershell  Step 1 - Put your existing password in a Secure String  $oldPassword = Read-Host "Your old Password" -AsSecureString  Step 2 - Start the password change set-AdAccountPassword -Identity paul-admin -OldPassword  $oldPassword Step 3 - Enter your new password You'll be prompted for your new password... Please enter the desired password for 'CN=xxxx,OU=Admin Users,OU=Users,OU=Privileged,DC=CAIS,DC=com,DC=edu,DC=au' Password: ************************** Repeat Password: **************************

Tip to create an underline on a heading shorter than the heading itself

You can use a pseudo element with :before (or :after ): h1 { font - weight : 300 ; display : inline - block ; padding - bottom : 5px ; position : relative ; } h1 : before { content : "" ; position : absolute ; width : 50 %; height : 1px ; bottom : 0 ; left : 25 %; border - bottom : 1px solid red ; } http://jsfiddle.net/9e27b/ This is another solution that centers the heading, the problem here is that the underline gets shorter as the column gets shorter. h2 {   display: inline-block;   padding-bottom: 15px;   position: relative;   width: 100% ;   text-align: center; } h2:before{     content: "";     position: absolute;     width: 8%;     height: 1px;     bottom: 0;     left: 46%;     border-bottom: 1px solid red; }

The web.config no extension mime problem Lets Encrypt on IIS/Windows

  Tip when using LetsEncrypt in Windows - Feature Requests - Let's Encrypt Community Support In a paragraph, just use the web.config file to set the mime type, eg...  After trying to figure out why my Lets Encrypt failed to generate in Windows, and discovering that it's the no extension mime type problem, I wondered whether certbot could fill in the missing gap. All that is needed is the following web.config file to be placed in the same directory as the challenge <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <staticContent> <mimeMap fileExtension="." mimeType="text/xml" /> </staticContent> </system.webServer> </configuration> Because there's no mime type for files without an extension on IIS, IIS sends back a 404 when verification happens. The web.config file above sets the mime type. After I created the .well-known