TheDeadCell

@TheDeadCell@lemmy.sdf.org
1 Post – 3 Comments
Joined 1 years ago

Since I don't know the structure of your files, I can't help entirely, but I would use find/locate to get a list of file paths, then use a script to take that list and use sed for the replacement, like this:

#!/bin/bash
for i in ListOfFilePaths.txt
do
  sed -i "s/oldtext/newtext/g" $i
done

Please copy the entire line for oldtext and newtext to avoid accidental replacements.

Also, I am very new to scripting, and this likely has multiple problems with it. I am just throwing out ideas.

1 more...

Looked at your github. I would do this in a script:

#!/bin/bash
find /base/path/of/files -type f -name "module.json" > ListOfFilePaths.txt

for i in ListOfFilePaths.txt
do
  sed -i "s/oldtext/newtext/g" $i
done

Once again, probably not the most efficient way to do it, but it might work.

This was the response from chatgpt when I coppied OP's exact post. It wasn't too far off:

Yes, there's a way to automate this process using a script. You can use a combination of the find command and sed to search and replace the version number in all your files. Here's a sample command you can use:

find /path/to/assets -type f -name "*.asset" -exec sed -i 's/verified version 10/verified version 11/g' {} +

Replace /path/to/assets with the actual path to your asset folders. This command will recursively search for .asset files and replace "verified version 10" with "verified version 11". Make sure to have a backup of your files before running this command, just in case.

Also, consider testing this on a smaller set of files first to ensure it works as expected before applying it to all 400+ files.