I am currently maintaining some older .bat scripts and trying to decide how much of the existing batch-file logic I should keep versus gradually move to C#.
The scripts mainly handle parsing XML, INI, and text files, manipulating and resolving file/directory paths, searching directories and files, interacting with SVN, copying/moving files, generating logs and running external tools and build commands
The scripts have grown more complicated over time, and maintaining this kind of logic in batch is becoming difficult.
I am considering moving the non-trivial logic into small C# command-line tools while keeping BAT files for simple orchestration.
My question is though, how much should I realistically keep in BAT files, and when should I switch to C#?
Would you recommend a rule of thumb such as:
BAT = simple orchestration / launching commands
C# = file manipulation, parsing, SVN, path handling, logging, error handling, etc.
Or is there a better way to structure this kind of build automation?
I would especially like to avoid rewriting everything unnecessarily while also avoiding the situation where the BAT files become increasingly complex and difficult to maintain.