]>
 
 
zdv2.bktei.com Git - BK-2020-03.git/blob - user/bkphotorights 
 
 
 
 
 
 
 
   2  # Desc: Apply metadata to photos with exiftool  
   3  # Usage: bkphotorights [FILE in]  
   4  # Ref/Attrib: [1]. Creative Commons XMP recommendation. (2015). https://wiki.creativecommons.org/wiki/XMP  
   5  #             [2]. Eva, Johannes. (2023-03-30). “How to edit EXIF metadata via the command line with ExifTool”. libre-software.net. https://libre-software.net/linux/edit-metadata-exiftool/  
   6  #             [2]. “XMP Tags”. (2023-06-08). exiftool.org. https://exiftool.org/TagNames/XMP.html  
   8  # Depends: * exiftool 12.16 (https://exiftool.org/ )  
  10  # Example: bkphotorights DSC00035.JPG  
  11  # Note: Change strCreator, strCreatorURL, strTerms, and strLicenseURL  
  12  #   values that should be added as metadata to the specified photo.  
  15  strCreator
= "Steven Baltakatei Sandoval" ;  
  16  strCreatorURL
= "https://baltakatei.com" ;  
  17  strTerms
= "This work is licensed to the public under the Creative Commons Attribution-ShareAlike license http://creativecommons.org/licenses/by-sa/4.0/ ." ;  
  18  strLicenseURL
= "http://creativecommons.org/licenses/by-sa/4.0/" ;  
  20  yell
() {  echo  " $0 : $*"  >& 2 ; }  # print script path and all args to stderr  
  21  die
() {  yell 
"$*" ;  exit  111 ; }  # same as yell() but non-zero exit status  
  22  must
() {  "$@"  || die 
"cannot $*" ; }  # runs args as command, reports args if command fails  
  28      if  [[ !  -f  " $1 "  ]];  then  die 
"FATAL:Not a file: $1 " ;  fi ;  
  29      if  !  command -v  exiftool 
1 >/ dev
/ random 
2 >& 1 ;  then  
  30          die 
"FATAL:exiftool not available. See https://exiftool.org/ ." ;  fi ;  
  33      # Check if exiftool recognizes the file format  
  34      if  !  exiftool 
-s -FileType  " $file_in "  1 >/ dev
/ random
;  then  
  35          yell 
"ERROR:File type not recognized by exiftool: $file_in " ;  
  38      # Change file metadata  
  40      cmd_args
+=( "exiftool" );  
  41      # cmd_args+=("-overwrite_original"); # hashtag reckless  
  44      cmd_args
+=( "-XMP-dc:Rights=" " $value " );  unset  value
;  
  47      cmd_args
+=( "-XMP-xmpRights:Marked=" " $value " );  unset  value
;  
  50      cmd_args
+=( "-XMP-xmpRights:UsageTerms=" " $value " );  unset  value
;  
  52      value
= " $strLicenseURL " ;  
  53      cmd_args
+=( "-XMP-cc:license=" " $value " );  unset  value
;  
  56      cmd_args
+=( "-XMP-cc:AttributionName=" " $value " );  unset  value
;  
  58      value
= " $strCreatorURL " ;  
  59      cmd_args
+=( "-XMP-cc:AttributionURL=" " $value " );  unset  value
;  
  61      cmd_args
+=( " $file_in " );  
  64      must 
" ${cmd_args[@]} " ;  
  69  # Author: Steven Baltakatei Sandoval