Skip to content

Instantly share code, notes, and snippets.

@kamawanu
Last active March 27, 2017 02:09
Show Gist options
  • Save kamawanu/afcd9ea9325989a31043ac0dd724382d to your computer and use it in GitHub Desktop.
Save kamawanu/afcd9ea9325989a31043ac0dd724382d to your computer and use it in GitHub Desktop.
#!/bin/bash -x
TEMP=/tmp/$$mkrun
trap "/bin/rm -rf $TEMP" 0 3 6 9 15
mkdir $TEMP
find . -mindepth 2 -type f | fgrep -v .git/ | fgrep -v .hg/ > $TEMP/raw
if [ $# == 0 ]
then
cat $TEMP/raw
exit 1
fi
cp $TEMP/raw $TEMP/n
while [ $# -gt 0 ]
do
fgrep $1 $TEMP/n > $TEMP/nn && mv $TEMP/nn $TEMP/n
shift
done
cat $TEMP/n
for F in $( cat $TEMP/n )
do
BN=$( basename $F )
MD5=$( md5sum $F )
case $F in
*.sh)
{
echo "#!/bin/bash #$MD5"
echo "exec bash -e \$( dirname \$0 )/$F \$*"
} > $BN.tmp
;;
*.py)
BN=$BN.sh
{
echo "#!/bin/bash #$MD5"
echo "exec python \$( dirname \$0 )/$F \$*"
} > $BN.tmp
;;
esac
if [ -s $BN.tmp ]
then
if [ -s $BN ]
then
diff $BN $BN.tmp
else
mv -v $BN.tmp $BN
fi
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment