> but that last command makes every single file executable, which is
> rather ugly (but doing a selective chmod 0755/0644 is a bit tricky
I was wondering about having every file executable in the source
distributions a while back, and came up with an quick way to make it
less ugly (inline due to attachment filtering on my end):
##################################
#!/usr/bin/env bash
noexe()
{
local fn=$1
local pfx=`echo $fn | cut -c -3`
#don't mess with mercurial store; adjust as needed for different
# vcs
if [ "$pfx" = ".hg" ]; then
return
fi
local ft=`file $fn | grep exe`
if [ "$ft" = "" ]; then
#not supposed to be executable, fix it
chmod -x "$fn"
fi
}
#using while loop rather than find -exec because -exec doesn't
# recognize bash functions.
find . -type f |while read i; do noexe "$i" ; done
############################################
> with all those script files - some need to be executed but others
> arent). I don't see a need to have read-only files like all the CIF
> dictionaries with permission 0755.
>
>
> The correct permissions can only be set during packaging
> unfortunately.
>
> Cheers
>
> Clemens
>
|