MYFILE=./myfile
Para facilitar a leitura, estou usando u=rw,go=r
em vez de octal 0644
.
Eu estou supondo que você deseja definir as permissões ausentes, mas se houver permissões extras presentes, você quer que elas sejam como estão.
Passo a passo:
PREV_PERM="'find \"\$MYFILE\" \! -perm -u=rw,go=r -ls'"
echo "$PREV_PERM"
chmod u+rw,go+r "$MYFILE"
ou combine-o em uma linha simples:
find "$MYFILE" '!' -perm -u=rw,go=r -ls -exec chmod u+rw,go+r "$MYFILE" ';'