Réponses:
Utilisez */
pour faire correspondre uniquement les répertoires.
chmod g+s /var/www/*/
Pour faire correspondre tous les répertoires et sous-répertoires utilisés **/*/
(à condition que vous les ayez globstar
activés dans bash):
shopt -s globstar
chmod g+s /var/www/**/*/
vous pouvez utiliser find, voir l'exemple ci-dessous
find /var/www/ -type d -exec chmod g+s {} \;
-maxdepth
find
argument.
Ce n'est PAS un caractère générique, donc je m'excuse pour une non-réponse, cependant ...
ls -al |grep ^d | awk '{print$NF}'
listera tous les répertoires dans le répertoire courant, c'est à vous de décider si vous souhaitez les traiter .
et / ..
ou les supprimer.
echo $(ls -al |grep ^d | awk '{print$NF}')
ne le fait se comporter comme un caractère générique