#!/bin/sh basename=`basename "$0"` || exit 1 usage="usage: $basename YYYYMMDDHHMMSS file [file ...]" if [ "$#" -lt 2 ] then 1>&2 echo "$usage" exit 1 else if [ `expr X"$1" : X'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$'` != 15 ] then 1>&2 echo "$usage" exit 1 else YYYYMMDDHHMMdotSS=`echo "$1" | sed -ne 's/^\(....\)\(........\)\(..\)$/\1\2.\3/p'` if [ `expr X"$YYYYMMDDHHMMdotSS" : X'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\.[0-9][0-9]$'` != 16 ] then 1>&2 echo "$basename: internal conversion failure, exiting!" exit 1 else shift EXIT="$?" for tmp do TZ=GMT0 touch -c -t "$YYYYMMDDHHMMdotSS" "$tmp" || EXIT="$?" done exit "$EXIT" fi fi fi