diff options
Diffstat (limited to 'config/create_shoplist.sh')
-rwxr-xr-x | config/create_shoplist.sh | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/config/create_shoplist.sh b/config/create_shoplist.sh new file mode 100755 index 0000000..caa934e --- /dev/null +++ b/config/create_shoplist.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +ITEM_DB_DIR="" +SHOP_LIST="shoplist.txt" + +SORT_MODE="2" +# 0 = no sort +# 1 = sort by id +# 2 = sort by item name + +if [ ! -e "$ITEM_DB_DIR" ]; then + echo "warning the directory \""$ITEM_DB_DIR"\" does not exist ..." + echo "... exiting!" + exit 1 +fi + +if [ -e "$SHOP_LIST" ]; then + echo "warning the file "$SHOP_LIST" allready exists ..." + echo "... enter y/Y to overwrite it : " + read KEY + if [ ! $KEY = "y" ] && [ ! $KEY = "Y" ]; then + echo "... exiting!" + exit 0 + fi +fi + +case $SORT_MODE in + 0) + cat "$ITEM_DB_DIR"/item_db* | grep -o -E "^[1-9][0-9]*[,][ ]+[a-zA-Z]*[,]" | sed -r -e 's/[,][ ]*/ /g' -e 's/[ ]*$//g' -e 's/ / 0 0 0 0 /g' > "$SHOP_LIST" + ;; + 1) + cat "$ITEM_DB_DIR"/item_db* | grep -o -E "^[1-9][0-9]*[,][ ]+[a-zA-Z]*[,]" | sed -r -e 's/[,][ ]*/ /g' -e 's/[ ]*$//g' -e 's/ / 0 0 0 0 /g' | sort -t " " -k 1 -g > "$SHOP_LIST" + ;; + 2) + cat "$ITEM_DB_DIR"/item_db* | grep -o -E "^[1-9][0-9]*[,][ ]+[a-zA-Z]*[,]" | sed -r -e 's/[,][ ]*/ /g' -e 's/[ ]*$//g' -e 's/ / 0 0 0 0 /g' | sort -t " " -k 2 > "$SHOP_LIST" + ;; + *) + echo "wrong value for variable SORT_MODE!" + exit 1 +esac + +exit 0 |