github.com/pdfcpu/pdfcpu@v0.11.1/_scripts/splitSpanDir.sh (about)

     1  #!/bin/sh
     2  
     3  # Copyright 2018 The pdfcpu Authors.
     4  #
     5  # Licensed under the Apache License, Version 2.0 (the "License");
     6  # you may not use this file except in compliance with the License.
     7  # You may obtain a copy of the License at
     8  #
     9  #	http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  
    17  # eg: ./splitDir.sh ~/pdf/big ~/pdf/out
    18  
    19  if [ $# -ne 2 ]; then
    20      echo "usage: ./splitDir.sh inDir outDir"
    21      exit 1
    22  fi
    23  
    24  out=$2
    25  
    26  #rm -drf $out/*
    27  
    28  #set -e
    29  
    30  # Split all files up by generating a new PDF for every 2 pages. 
    31  span=2
    32  
    33  for pdf in $1/*.pdf
    34  do
    35  	
    36  	f=${pdf##*/}
    37  	#echo f = $f
    38  	
    39  	f1=${f%.*}
    40  	#echo f1 = $f1
    41  	
    42      mkdir $out/$f1
    43      cp $pdf $out/$f1
    44  
    45      pdfcpu split -verbose $out/$f1/$f $out/$f1 $span &> $out/$f1/$f1.log
    46      if [ $? -eq 1 ]; then
    47          echo "split error: $pdf -> $out/$f1"
    48          echo
    49  		continue
    50      else
    51          echo "split success: $pdf -> $out/$f1"
    52          for subpdf in $out/$f1/*_*.pdf
    53          do
    54              pdfcpu validate -verbose -mode=relaxed $subpdf >> $out/$f1/$f1.log 2>&1
    55              if [ $? -eq 1 ]; then
    56                  echo "validation error: $subpdf"
    57                  exit $?
    58              #else
    59                  #echo "validation success: $subpdf"
    60              fi
    61          done
    62      fi
    63  
    64  done