Câu trả lời:
Sử dụng */
để chỉ khớp với các thư mục.
chmod g+s /var/www/*/
Để phù hợp với tất cả các thư mục và thư mục con sử dụng **/*/
(miễn là bạn đã globstar
bật trong bash):
shopt -s globstar
chmod g+s /var/www/**/*/
bạn có thể sử dụng find, xem ví dụ dưới đây
find /var/www/ -type d -exec chmod g+s {} \;
-maxdepth
find
đối số.
Đây KHÔNG phải là ký tự đại diện, vì vậy tôi xin lỗi vì không trả lời, tuy nhiên ...
ls -al |grep ^d | awk '{print$NF}'
sẽ liệt kê tất cả các thư mục trong thư mục hiện tại, tùy bạn quyết định xem bạn có muốn xử lý .
và ..
loại bỏ chúng không.
echo $(ls -al |grep ^d | awk '{print$NF}')
không làm cho nó hoạt động như một ký tự đại diện