You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
737 B
40 lines
737 B
6 years ago
|
#!/bin/bash
|
||
|
|
||
|
# Интерактивное переименование PDF-файлов, используя информацию из метаданных
|
||
|
|
||
|
filelist() {
|
||
|
for f in "$@"; do
|
||
|
echo "\"$f\""
|
||
|
done
|
||
|
}
|
||
|
|
||
|
DIR=$(pwd)
|
||
|
|
||
|
FILES=()
|
||
|
|
||
|
while [[ $# -gt 0 ]]; do
|
||
|
key="$1"
|
||
|
|
||
|
case $key in
|
||
|
-d|--directory)
|
||
|
DIR="$2"
|
||
|
shift # past argument
|
||
|
shift # past value
|
||
|
;;
|
||
|
*)
|
||
|
FILES+=("$1") # save it in an array for later
|
||
|
shift # past argument
|
||
|
;;
|
||
|
esac
|
||
|
done
|
||
|
|
||
|
set -- "${FILES[@]}"
|
||
|
|
||
|
if [ "${#FILES[@]}" -gt 0 ]; then
|
||
|
filelist "${FILES[@]}" | viper +'set ft=rename' +"let b:rename_dir=\"$DIR\"" | sed "s/^/mv /" | sh
|
||
|
else
|
||
|
echo "USAGE: $(basename $0) [-d/--directory <dir>] file1.pdf file2.pdf [...]"
|
||
|
exit 1
|
||
|
fi
|
||
|
|