Os comandos chown (1) e chmod (1) não tem nativamente sunch uma opção. Se você quiser adicionar essa funcionalidade, então você:
- Tem que alterar a fonte e recompilar.
- Ou escreva um wrapper.
A primeira opção é a mais limpa. O segundo é mais fácil. Se você ficar preso ao escrever isso, precisará de uma nova pergunta que provavelmente será mais adequada para [SO], mas brevemente:
1) mova chmod para outro lugar. por exemplo. mv /bin/chmod /bin/chmold.therealthing
2) Crie um script executável chamado chmod que faz o que você quer (e que chama o verdadeiro chmod).
Algo não testado de uma pessoa que não é shell script (também conhecido como:)
#!/usr/bin/env bash
echo "/bin/chmod (Shell script) called with these arguments:"
echo $@
read -p "Are you sure you want to do this? (y/n) " RESPONSE
if [ "$RESPONSE" = "y" ]; then
exec /bin/chmod.therealthing $@
else
echo "OK, aborting."
fi
Se você quiser um controle mais granular, o script se tornará mais complexo. Ainda assim, você gostaria de poder analisar a entrada e executar um chmod para cada arquivo (após verificar uma sintaxe válida).