Skip to content

Latest commit

 

History

History
33 lines (30 loc) · 848 Bytes

multiple-subdirectory-sed-operation.md

File metadata and controls

33 lines (30 loc) · 848 Bytes
aliases archive_links category classification date date_modified draft id image links local_archive_links pinned print series tags title type
multiple-subdirectory-sed-operation
bash
public
2020-11-24 10:51:02 -0800
2020-11-24 10:51:02 -0800
false
20201124185102
false
false
loop
iterate
sed
bash
Multiple Subdirectory sed Operation
tech-note

The below will loop through each subdirectory from wherever you run it, then perform a sed operation on files matching the file ending.

As can be seen in the example, I've used this to quickly update providers across lots of Terraform modules, without having to manually update them.

# Formatted:
for directory in *; do
    for file in $directory/*.tf; do
        sed --in-place=.bak --regexp-extended 's/aws    = "2.67.0"/aws    = "3.17.0"/g' $file
    done
done