Sulinstajn

@Sulinstajn@lemmy.ml
0 Post – 1 Comments
Joined 1 years ago

You can use find utility for that. I'm not at Linux machine right now, so maybe I can make mistake in commands, but something like this should work:

find /path/to/data/folder -name "type1name" -exec mv -t /path/to/dest/folder {} +

In this example, command find every file containing "type1name" in its name in folder /path/to/data/folder and move it into /path/to/dest/folder.

So if you have folder "~/data/all_data" containing files like "temperature_2023-06-30.csv", " temperature_2023-06-29.csv", "power_2023-06-30.csv" and "power_2023-06-29.csv", do:

mkdir ~/data/temperature

mkdir ~/data/power

find ~/data/all_data -name "temperature*" -exec mv -t ~/data/temperature {} +

find ~/data/all_data -name "power*" -exec mv -t ~/data/ {} +

More, you can tweak it into for examplee filtering according to current date and run that script every day.