#!/bin/sh swipeToQuery(){ swipe=$1 printf '^' printf "${swipe:0:2}" if test "${swipe:2}"; then printf "${swipe:2}" |grep -o . | xargs printf '\?%s' fi printf '$' } query(){ swipe="$2" wordlist="$1" query=$(swipeToQuery $swipe) #echo "query: $query" > /dev/stderr grep $query "$wordlist" } while read -r line; do test "$line" && query "$1" "$line" && printf '\n' done