Você pode usar localizar e restringir para obter apenas arquivos no diretório atual
find ~/x -maxdepth 1 -type f -exec chmod +x {} +
Eu entendo o título desta pergunta como estranho, mas me pergunto se em algumas situações deveria haver uma necessidade de tomar cuidado extra e de alguma forma "forçar" a não-recursividade ao alterar as permissões com chmod
não-recursivamente (sem o-R
% argumento).
Digamos que eu tenha um diretório ~/x
. Este diretório tem alguns arquivos, assim como uma sub-dir ~/x/y
que também tem alguns arquivos, e eu decidi tornar todos os arquivos x
executáveis sem efetuar arquivos em y
. Eu poderia executar:
chmod +x ~/x/*
Surly o chmod
deve fazer o trabalho e é improvável que em qualquer versão do Bash (incluindo versões futuras) a lógica POSIX seja alterada e o chmod acima também afete o subdiretório, mas pergunto-me se poderia Quaisquer situações em Bash (ou shells comuns) em que chmod +x ~/x/*
também cobrirá os arquivos y
, e como melhorar meu comando para proteger de tais mudanças indesejadas?