You might try ideone.com. You can edit and run bash scripts there (like Dennis commented, shell scripts a hardly ever actually compiled). Input is limited to stdin and output is limited to stdout, so you could not use it to develop any file manipulation scripts. If you are just trying to avoid the dual-boot/reboot situation there is no need to look for an “online” solution though.
Dan’s recommendation of Cygwin seems like a reasonable way to run shell scripts under Windows.
If you need something a bit more fully Unix-y you might try a virtual machine (run another OS “inside” Windows). I think you can use VMWare Player to run a variety of pre-installed GNU/Linux distributions.
Along the same lines, you could try VirualBox and install your preferred Unix-y system under it if you can not find a suitable VM image that is compatible with (or you prefer not to use) VMWare Player.