Ik heb al mijn bestanden en data op een fileserver staan (Linux natuurlijk, in mijn geval Debian Stable). Er is ook een 'bin'-directory die gekoppeld wordt aan desktopsystemen om een bende scripts en handigheidjes te kunnen uitvoeren. Dat gebeurt allemaal via NFS.
Nu heb ik het probleem (en ik heb nog geen oorzaak kunnen vinden) dat opeens alle bestanden die uitvoerbaar zouden moeten zijn, dat ineens niet meer zijn. Nu staan er bij sommige scritpbestanden ook gewone databestanden en het is natuurlijk niet de bedoeling, dat die uitvoerbaar gemaakt worden. We willen geen Windows-toestanden met uitvoerbare data.
Het hieronder staande script spoort alle scriptbestanden op in en onder ~/bin/ en maakt ze uitvoerbaar.
#!/bin/bash
echo Vind scriptbestanden en maak ze uitvoerbaar
for f in $(find ~/bin/ -type f); do
line=$(head -n 1 "${f}")
if [[ "${line}" == "#!/bin/"* ]]; then
echo "script: ${f}"
chmod +x "${f}"
fi
done 2>/dev/null
Ik deel de code voor wat hij waard is. Je kunt er maar plezier van hebben.