Advertisement
Guest User

Untitled

a guest
Jul 2nd, 2022
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.13 KB | None | 0 0
  1. #/bin/bash
  2. #
  3. # laskuri.sh
  4. #
  5. # muunna suoritettavaksi komennolla "chmod +x laskuri.sh"
  6. #
  7. # Käyttö: ./laskuri.sh gcode-hakemisto
  8. #
  9. # esim. "./laskuri gcode"
  10. #
  11. #
  12.  
  13. sum=0
  14. for file in $1/*; do
  15.   if [ -f $file ] && [ "${file##*.}" == "gcode" ]; then
  16.     time=$(cat $file | grep "; estimated printing time (normal mode)" | cut -d= -f2)
  17.     if [ -n "$time" ]; then
  18.       for part in $time; do
  19.         factor=0
  20.         value=$(echo "${part//[!0-9]/}")
  21.         if [ "${part: -1}" == "h" ]; then
  22.           factor=3600
  23.         fi
  24.         if [ "${part: -1}" == "m" ]; then
  25.           factor=60
  26.         fi
  27.         if [ "${part: -1}" == "s" ]; then
  28.           factor=1
  29.         fi
  30.         sum=$(($sum + $value * $factor))
  31.       done
  32.     fi
  33.   fi
  34. done
  35. if [ $sum -gt 0 ]; then
  36.   echo $sum
  37. fi
  38.  
  39. # Esimerkki:
  40. #
  41. # $ ls gcode/
  42. # baak.gcode  fafa.gcode  tiedosto2.gcode  tiedosto.gcode
  43. #
  44. #$ cat gcode/*
  45. #bklaa
  46. #bklaa
  47. #päläpälä
  48. #; estimated printing time (normal mode) = 2h 34m 19s
  49. #päläpälä
  50. #
  51. #päläpälä
  52. #; estimated printing time (normal mode) = 1h 23m 45s
  53. #päläpälä
  54. #
  55. #$ ./laskuri.sh ./gcode
  56. #14284
  57.  
  58.  
  59.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement