rc.local is a file. Not a directory. A normal bashscript extension would be sh instead of bat.
If you touch a file and want to make it executable, you need to do a chmod +x myscript.sh first.
Only then you can start it directly by executing it with ./ or in another script.
I think you won't need sudo as rc.local stuff is run as root anyway.
Another idea is to google "linux autostart root" and learn a bit about what you are doing here before going on.
Potentially you can rip wide open holes into the security of your system with auch stuff.
And yes, you can erase the lines that call the script from the rc.local in the script.
Have a look at the sed program.