JSON = bookmarks.json ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS)) $(eval $(ARGS):;@:) insert: cat $(JSON) | jq -r '.links |= . + [{"title": "$(ARGS)", "url": "https://$(ARGS)"}]' | tee $(JSON).new mv $(JSON).new $(JSON) delete: cat $(JSON) | jq 'del(.links[] | select(.title == "$(ARGS)"))' | tee $(JSON).new mv $(JSON).new $(JSON)