David Rasmussen wrote:
> Open cygwin. Write 'notepad test.txt'. Notepad opens, write something
> and then save the file. Now do an ll. The file test.txt has been created
> and has the executable flag set. I want it to not be set in such cases.
Part of the reason for this is because on Windows the executable flag
means more than just execution. A number of dynamic use functions (the
font manager, for one) require anything they operate with to be
executable as well. So *everything* gets set executable, and Windows
utilities depend on the file extension to determine if a file is executable.
If you're poking directly as Windows APIs, like Cygwin does, that can be
worked around, both to remove the need for +x in most cases and to allow
+x files that do not use an extension legacy Windows treats as
executable to be executed.
If you're using a Windows program that you didn't write yourself to
ignore standard Windows conventions, there is no way to stop it. Get
used to using setacls or cacls a lot.