Estou tentando escrever um make
comando Linux simples com scripts bash. aqui está o que escrevi até agora:
#!/usr/bin/env bash
function make_cmd()
{
read target colon sources
for src in $sources; do
if [ $src -nt $target ]; then
while read cmd && [[ $(echo "$cmd" | grep "$(printf '\t')"*) ]]; do
echo "executing $cmd";
eval ${cmd#$(printf '\t')};
done
break;
fi
done
}
este é o formato de entrada:
target.file : source.file
[tab]command
por exemplo:
target.txt : source.txt
ls
cd
o script funciona bem, mas não consegue encontrar comandos começando com tab. sempre os executa. por exemplo, os comandos nesta entrada ainda são executados.
target.txt : source.txt
ls
cd
Como posso consertar isso?