It's not as bad as it sounds, and you don't have to do it for all scripts.
1) Most scripts will work, you just have to tweak how loops are written and the way you declare functions.
2) If the script uses basic commands like ls, mkdir, etc their are powershell aliases built in already that point to the equivalent PS command.