@AntonioPt This is not a bug.
Your problem can occur when you give your script a name without a .sh extension.
In this case your system will have to look into your file to determine the file type. If it finds a string '<svg' withing the first 260 characters of the file it will determine that it is SVG image file and not a bash script. This happens in your case.
It doesn't help that your file starts with '#!/bin/sh' which you might think clearly defines it as a bash script. This is because your system checks for SVG files before it checks for shell script files.
If you don't want to use a .sh extension for your file there are a couple of tricks you can do to shield your script from false SVG association. For example instead of echo "<svg>blabla"
you could write echo <"svg>blabla"
or echo "<""svg>blabla"
. Just avoid the 4 consecutive characters <svg
at the beginning of your script.
You can easily check if your file is recognizes as an image or a script file. Just pay attention to the file icon in a ROX-Filer window.
Edit: @Burunduk Our posts crossed. The problem occurs in all Puppy versions. I don't agree that this is a bug. Without a file extension there is nothing else ROX-Filer can and should do than consulting the mime magic file.