#!/bin/sh # # Find and replace by a given list of files. # # replace foo bar **/*.rb find_this="$1"; shift replace_with="$1"; shift items=$(ag -l --nocolor "$find_this" "$@") temp="${TMPDIR:-/tmp}/replace_tmp.$$" for item in $items; do sed "s/$find_this/$replace_with/g" "$item" > "$temp" && mv "$temp" "$item" done