Tôi chỉ nên lặp lại tên của các tệp hoặc thư mục với cấu trúc này:
ls -Al | while read string
do
...
done
ls -Al
đầu ra:
drwxr-xr-x 12 s162103 studs 12 march 28 12:49 personal domain
drwxr-xr-x 2 s162103 studs 3 march 28 22:32 public_html
drwxr-xr-x 7 s162103 studs 8 march 28 13:59 WebApplication1
Ví dụ: nếu tôi thử:
ls -Al | while read string
do
echo "$string" | awk '{print $9}
done
sau đó chỉ xuất ra các tập tin và thư mục không có khoảng trắng. Nếu tệp hoặc thư mục có khoảng trắng như "miền cá nhân" thì đó sẽ chỉ là từ "cá nhân".
Tôi cần giải pháp rất đơn giản. Có lẽ có giải pháp tốt hơn awk.
ls -Al | while
. Một cách đơn giản và đáng tin cậy hơn là for string in *; do echo "$string"; done
.
ls
? Phân tích cú pháp ls
và "hoạt động trong tất cả * nix và sẽ không phá vỡ nếu có chuyện gì xảy ra" không kết hợp tốt với nhau.
ls -Al *' '*
?ls
Đầu ra của phân tích cú pháp không bao giờ dẫn đến bất cứ điều gì tốt.