X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=planime;h=5b09f0fe2e0dd76ba16dd3cc7c0a2ff1683606de;hb=25378dd83f0a518cdd0e0935afb1140ed383cb84;hp=899a1c934a272613ec3fe97cf6b5c1f4c50fe363;hpb=40777a191cb2a6f9c41cffe8faead32a251605c3;p=utils.git diff --git a/planime b/planime index 899a1c9..5b09f0f 100755 --- a/planime +++ b/planime @@ -1,5 +1,39 @@ #!/bin/sh +isnum() { + grep -xq '[0-9]\+' <<<"$1" +} + +findfile() { + local file tail eq eqt m + for file in "$1"*; do + tail="${file#$1}" + eq="${tail%.*}" + m=n + if [ "${eq%% *}" -eq "$2" ] 2>/dev/null; then + if [[ "$eq" == *\ * ]]; then + eqt="${eq#* }" + else + eqt= + fi + m=y + elif [ "${eq:0:${#2}}" = "$2" ]; then + eqt="${eq:${#2}}" + if [ "${eqt:0:1}" = " " -o -z "$eqt" ]; then + eqt="${eqt# }" + m=y + fi + fi + if [ "$m" = y ]; then + if [ "$eqt" = "$3" -o "$eqt" = "($3)" ]; then + echo "$file" + return 0 + fi + fi + done + return 1 +} + cmdline=(mplayer -fs) while [ "${1:0:1}" = - ]; do @@ -60,10 +94,8 @@ ifile=".${ep}.info" if [ -n "$savepar" ]; then if [ -r "$ifile" ]; then - exec 3<"$ifile" - rm "$ifile" - egrep -v "^${savepar}:" 0<&3 >"$ifile" - exec 3<&- + egrep -v "^${savepar}:" "$ifile" >"$ifile.new" + mv -f "$ifile.new" "$ifile" fi echo "$savepar: $saveval" >>"$ifile" exit 0