@@ -12,9 +12,16 @@ RFC_get()
1212 | sed ' s/##/\n/g' \
1313 | sed ' s/# //g' \
1414 | grep -o ' .*\. ' \
15- | sed -r ' s/^(.*)(January|February|March|April|May|June|July|August|September|October|November|December) [[:digit:]]{4}(.*)$/\1/'
15+ | sed -E ' s/^(.*)(January|February|March|April|May|June|July|August|September|October|November|December) [[:digit:]]{4}(.*)$/\1/'
1616 }
1717
18+ UNAME=$( uname -s)
19+ if [ " $UNAME " = " Darwin" ]; then
20+ SED_I=" sed -i ''"
21+ else
22+ SED_I=" sed -i"
23+ fi
24+
1825 mkdir -p /tmp/RFC_get
1926 local WEB_RESP=" /tmp/RFC_get/rfc_get_web_resp_${RANDOM} .html"
2027 local RFC_INDEX=" /tmp/RFC_get/rfc_index.html"
@@ -23,9 +30,11 @@ RFC_get()
2330 [ -f ${RFC_INDEX} ] || curl ' https://www.ietf.org/download/rfc-index.txt' 2> /dev/null > ${RFC_INDEX}
2431 local MIN_RFC=1
2532 local MAX_RFC=$( sed ' /^ / d' ${RFC_INDEX} | tail -n 1 | sed ' s/ .*//' )
26-
33+
34+ local arg_lower=$( echo " $1 " | tr ' [:upper:]' ' [:lower:]' )
35+
2736 # Syntax check Usage statement
28- if [ $# -lt 1 ] || [[ ${1,,} == " -h" ]] || [[ ${1,,} == " --help" ]] || [[ ${1,,} == " :help" ]] || [[ ${1,,} == " :usage" ] ]
37+ if [ $# -lt 1 ] || [ " $arg_lower " = " -h" ] || [ " $arg_lower " = " --help" ] || [ " $arg_lower " = " :help" ] || [ " $arg_lower " = " :usage" ]
2938 then
3039 printf "
3140 USAGE:
@@ -80,15 +89,15 @@ RFC_get()
8089 fi
8190 fi
8291 # Print list of available RFCs
83- elif [[ " ${1,,} " == " :list" ] ]
92+ elif [ " $arg_lower " = " :list" ]
8493 then
8594 # Format RFC_INDEX to show short description of each RFC
8695 rfc_describe \
8796 | grep -v ' Not Issued' \
8897 | sed ' s/ .*//; s/^0*//'
8998 return 0
9099 # Print list of available RFCs
91- elif [[ " ${1,,} " == " :describe" ] ]
100+ elif [ " $arg_lower " = " :describe" ]
92101 then
93102 # Format RFC_INDEX to show short description of each RFC
94103 rfc_describe
@@ -101,7 +110,7 @@ RFC_get()
101110 > $WEB_RESP
102111 fi
103112 # Format nicely and print
104- sed -i ' /Page [0-9]/,+2d; /page [0-9]/,+2d' ${WEB_RESP}
113+ $SED_I -e ' /Page [0-9]/,+2d; /page [0-9]/,+2d' ${WEB_RESP}
105114 if grep -q ' <!DOCTYPE html>' ${WEB_RESP}
106115 then
107116 echo " Error retrieving RFC $1 "
@@ -112,5 +121,4 @@ RFC_get()
112121 return 0
113122 fi
114123)
115-
116124RFC_get " $1 "
0 commit comments