سلام خواهش می کنم.
اما امروز:
اگر می خواهید لیست کل فایلهای شما در یک متغیر ذخیره شود با دستور:
LISTFILES="`ls -1`"
اینکار را انجام دهید. نام فایلها با فاصله در این متغیر قرار می گیرد.
کلا برای قرار دادن نتیجه یک دستور در متغیر از این راه می توانید استفاده کنید. مثلا ارسال محتویات یک فایل به متغیر با دستور زیر:
ls -1 > __LS__1
LISTFILE2="`cat __LS__1`"
دستور اول مد نظر من نیست فقط خواستم لیست فایلها در یک فایل قرار گیرد.
به دستور دوم نگاه کنید که چگونه محتویات یک فایل را به داخل متغیر می ریزد.
مبحث دوم:
دستور for
در داس خیلی از این دستور خوشم می آمد نحوه کار آن در ویندوز و داس:
for %f in (*.*) do echo %f
که %f متغیر است و عبارت داخل پرانتز لیست فایلهایی است که کاری می خواهید با دستور بعد از do روی آنها انجام دهید.
اما در لینوکس:
[code]
for INDEX in `ls -1` ; do echo $INDEX ; done
[code]
و روش دوم:
for (( I=0 ; I < 10 ; I++)); do echo $I ; done
می بینید که مانند بسیاری از زبانهای برنامه نویسی foreach و for شبیه C دارد.
البته می توانید هر چقدر می خواهید دستور بین do و done قرار دهید و با ; از هم جدا کنید.
راستی اسم کاراکتر ` چیست؟ (کاراکتر زیر ESC در صفحه کلید که با shift کاراکتر ~ تایپ می شود.) (فکر کنم کوتیشن شروع باشد و ' کوتیشن انتهایی یعنی در یک نقل قول اول می آید.)