XCOPY
شکل کلی دستور:
کد:
XCOPY [d:][path]filename [d:][path][filename] [/A][/D:(date)] [/E][/M][/P]
[/S][/V][/W][Y|-Y]
عمل: کپی کردن دایرکتوری ها، ساب دایرکتوری ها و فایل ها
خب اولین filename مطابق معمول نام فایل مبدا یا همون فایلی که قراره کپی بشه و دومین filename هم نام فایل مقصد یا همون نام فایل کپی شده است. مسیر اول هم مسیر فایل مبدا و مسیر دوم مسیر فایل مقصده و اگه مسیر دوم رو ننویسید فایلهای کپی شده در همون دایرکتوری جاری کپی می شن.
دستور XCOPY برای کپی کردن تمام یه دیسک شامل تمام داده ها و فایل ها و دایرکتوری ها بکار می ره. این دستور بجای دستور DISKCOPY در زمانی استفاده می شه که بخواید اطلاعات رو از یه دیسکی با یه فرمت به دیسک دیگه ای با فرمت متفاوت کپی کنید ( مثلا کپی کردن از دیسک 5 1/4 inch به دیسک 3 1/2 inch ) .
دستور XCOPY از دستور COPY قدرتمندتره بخصوص در زمانی که می خواید از درایو بک آپ بگیرید. استفاده معمول اون هم در بک آپ گرفتن از فایلهایی هستش که بعد از آخرین بک آپ گیری دچار تغییر شدن یا اضافه شدن.
کد ارورهای احتمالی:
کد:
0 - Copying was completed without error
1 - No files found
2 - User terminated the copy
4 - Initialization error (not enough memory, invalid syntax, path not found)
5 - Copy terminated due to INT 24 error reading or writing disk
/A
تنها فایلهایی رو کپی می کنه که archive باشن و فایلهای کپی شده هم این صفت رو خواهند داشت
تنها فایل هایی رو کپی می کنه که پس از اون تاریخی که مشخص می کنید دچار تغییر شده باشن
تمام فایل ها و ساب دایرکتوری های مسیر مشخص شده رو کپی می کنه
ساب دایرکتوری ها رو کپی می کنه حتی اگه خالی باشن. درصورت استفاده از این قسمت باید /S رو هم همراهش بنویسید
این سویچ هم مثل /A عمل می کنه با این تفاوت که در /A هم فایلهای مبدا و هم مقصد دارای صفت archive می شدند اما دراینجا فایلهای مقصد ( کپی شده ها) آرشیو نیستند و همچنین این سویچ فقط فایل های آرشیو رو کپی میکنه و اگه فایلی آرشیو نباشه کپی نمی شه
از شما می پرسه مطمئنید می خواید فایل کپی بشه یا نه. هرچند اگه این سویچ رو با سویچ /E بکار ببرید اگه داس به یه دایرکتوری خالی برسه اون رو کپی می کنه و ازتون اجازه هم نمی گیره!
برنامه مطمئن می شه که فایل های مبدا و مقصد مثل هم باشن و در حین کپی کردن اختلافی بوجود نیومده باشه
دستور کپی کردن زمانی شروع می شه که شما اجازه رو صادر کنید! اگه از این سویچ استفاده نکنید به محض نوشتن دستور و زدن اینتر کار کپی شروع می شه
جابجا کردن فایلهای مقصد با فایلهای هم نامی که ممکنه در محل مقصد وجود داشته باشن بدون اجازه گرفتن از شما
عکس حالت بالا. یعنی درصورت برخورد با فایل هم نام اول از شما می پرسه که replace بکنه یا نه
مثال:
برای کپی کردن تمام فایل ها و دایرکتوری ها ( بجز دایرکتوری های خالی) از درایو C به درایو A تایپ می کنیم:
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
CALL
شکل کلی دستور:
کد:
CALL [d:][path]batchfilename [options ]
عمل: فراخوانی یه batch file دیگه و سپس برگشتن به batch file در حال اجرا و ادامه دادن مراحل
خب این جمله بالایی که گفتم اصلا قابل فهم نبود نه؟ عیب نداره حالا توضیح می دم! اول اینکه batch file چیه؟
batch file یک فایل ASCII هستش که شامل یک یا چند فرمان برای سیستم عامله. این فایل ها پسوند cmd. یا bat. دارند. زمانی که نام این فایل ها رو در محیط خط فرمان تایپ کنید اجرا می شن و دستورات داخلشون به ترتیب اجرا می شه.
خب پس حالا جمله بالا کمی قابل فهم شد! یعنی وقتی یک batch file در حال اجراست ما می تونیم با فرمان CALL یه batch file دیگه رو هم فراخوانی کنیم که در اینصورت به batch file دوم می گن: CALLed batch file. حالا این batch file دوم شروع می کنه به اجرا شدن و پس از اینکه به پایان رسید داس برمی گرده به اجرای batch file اول.
مثال:
برای اجرا کردن فایل های STARTER.BAT ، TESTER.BAT و FINISH.BAT به ترتیب فرمان های زیر رو وارد می کنیم:
کد:
call starter
call tester
call finish
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
CHKDSK
شکل کلی دستور:
کد:
CHKDSK [d:][path] [/F]
عمل: چک کردن درایو
این دستور کاملا مشخصه چیکار می کنه: درایوی رو که مشخص می کنید چک می کنه و اگه اروری پیدا کرد گزارش می ده. اگه از سویچ F استفاده کنید ارورهای بلوک های غیر مجاور رو پیدا می کنه و تصحیح می کنه. یعنی چی؟ حالا می گم: وقتی سیستم فایلی رو می خواد رو ی دیسک ذخیره کنه نمی یاد از یک کنار شروع کنه به ذخیره کردن یعنی اطلاعات بصورت تصادفی روی دیسک ذخیره می شن. فرض کنید که دیسک از خونه های کوچکی با اندازه یکسان تشکیل شده و فایل ها بطر تصادفی در این خانه ها جای داده می شن. حالا فرض کنید یه فایلی گنده تر از اونه که توی یه خونه جا بشه حالا چیکار می کنید؟ در اینجا سیستم، فایل رو می شکنه و تکه هاش رو باز هم بطور تصادفی داخل خونه ها می ذاره این اتفاق بخصوص زمانی می افته که شما فایلی رو از روی درایو پاک کنید یا جابجا کنید یعنی همه فضاهای خالی و پر در هم قاطی پاتی می شن و سیستم مجبور می شه به زور فایل ها رو در فضاهای خالی باقی مانده جا بده و هی اونا رو بشکنه! ( با فرایند DEFRAGMENT فایلها مرتب می شن و این مشکلات حل می شه) البته سیستم همینطوری هم فایل های شکسته رو پخش و پلا نمی کنه بلکه بهشون یه آدرس می ده تا بتونه بعدا پیداشون کنه. حالا اگه اون آدرس گم بشه یعنی فایلی که نصفه شده نصفه اش پیدا نمی شه! در اینجا اگه دستور CHKDSK رو بکار ببریم این فایل های شکسته شده ی بی آدرس توسط سیستم بررسی و گزارش می شن. حالا فهمیدید ارور در بلوک های غیر مجاور یعنی چی؟ یعنی با استفاده از سویچ F شما به داس می گید سعی کنه تکه های از هم دور افتاده ی فایل های شکسته رو پیدا کنه و باهاشون یک فایل جدید ایجاد کنه ( یعنی اون ارورها فیکس می شن) . این فایل های جدید همه شون با کلمه FILE شروع می شن و با چهار عدد تموم می شن: 0000 با پسوند CHK.
مثلا اولین فایلی که به این طریق درست بشه اسمش می شه: FILE0000.CHK
همونطور که توضیح دادم با این سویچ پس از پیدا کردن ارورها اونها رو تصحیح می کنه
مثال:
اگه تایپ کنید:
سیستم درایو A رو کنترل می کنه و مثلا نتایج زیر رو گزارش می کنه:
کد:
362496 bytes total disk space
53248 bytes in 2 hidden files
301056 bytes in 8 user files
8192 bytes available on disk
524288 bytes total memory
198976 bytes free
که البته ممکنه خیلی چیزهای دیگه هم بگه.
حالا فرض کنید سیستم با اجرای فرمان CHKDSK یه ارور می ده که سه تا قسمت شکسته پیدا کرده:
کد:
3 lost clusters found in 3 chains.
Convert lost chains to files (Y/N)?
حالا اگه شما Y رو بزنید این خطا فیکس می شه و اگه دوباره فرمان CHKDSK رو اجرا کنید :
می بینید که سه فایل زیر به دایرکتوری Root اضافه شدن:
کد:
FILE0000.CHK
FILE0001.CHK
FILE0002.CHK
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
RD
شکل کلی دستور:
عمل: پاک کردن دایرکتوری
با این دستور فقط می تونید یه دایرکتوری خالی رو پاک کنید.برای اینکه بفهمید یه دایرکتوری خالیه یا نه می تونید از دستور DIR استفاده کنید. فرض کنید می خوایم ببینیم آیا دایرکتوری NEWFILES خالیه یا نه پس تایپ می کنیم:
خطوطی که برای یه دایرکتوری خالی ظاهر می شن اینهاست:
کد:
Volume in drive C is DOS1
Directory of C:\NEWFILES
. DIR 4-09-87 8:36p
.. DIR 4-09-87 8:36p
2 File(s) 17671520 bytes free
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
TYPE
شکل کلی دستور:
کد:
TYPE [d:][path]filename
عمل: نشان دادن محتویات فایل
توضیح نداره دیگه! محتویات فایل رو باهاش می بینید!
مثال:
برای دیدن محتویات فایل LETTER3.TXT که در درایو B قرار داره تایپ می کنیم:
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
FASTOPEN
شکل کلی دستور:
عمل: نگهداری track های محل فایل های مورد نظر برای دسترسی سریعتر به آن ها
track چیه؟ track ها دوایر متحدالمرکز روی دیسک هستند که در ذخیره سازی اطلاعات شرکت دارند ( همینقدر توضیح کافیه! من قبلا یه جایی این ها رو گفتم برید بگردید تا پیدا کنید!) حالا وقتی از این دستور استفاده می کنید وقتی فایل یا دایرکتوری ای رو باز می کنید مسیر و نام اون دایرکتوری در حافظه ذخیره می شه تا دفعه بعد دسترسی به اون سریعتر بشه.
عددی که وارد می کنید تعداد فایل هایی هستش که می خواید track شون در حافظه نگهداری بشه. ( از 10 تا 999 تا فایل). اگه عددی وارد نکنید داس بطور پیش فرض track 10 تا فایل رو نگه می داره.
میزان حافظه مصرف شده برای هر فایل یا دایرکتوری 40 بایت هستش.
مثال:
برای نگه داشتن track های 30 فایل در درایو C تایپ می کنیم:
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
TITLE
شکل کلی دستور:
عمل: تغییر عنوان پنجره Command Prompt
به پنجره Command Prompt نگاه کنید! عنوانش چیه؟ معمولا عنوان این پنجره مسیر فایل اجرایی cmd.exe هستش اما شما با این دستور می تونید عنوان رو عوض کنید و هرچی دلتون خواست بذارید!
مثال:
برای عوض کردن عنوان به مثلا MY CMD تایپ می کنیم:
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
UNDELETE
شکل کلی دستور:
کد:
UNDELETE [d:][path][filename]
UNDELETE[/list|/all]]
عمل: بازگرداندن فایل هایی که با دستور DELETE از بین رفته اند
این کار قبلا توسط دستور Recover انجام می شد اما دستور recover دیگه قدیمی شده و در ورژن های 5 به بالا کامل حذف شده. دستور UNDELETE حالا کاری مشابه انجام می ده هرچند قدرت زیادی نداره و اگه فایلی رو پاک کنید و بعد روی درایو یه فایل جدید ایجاد کنید یا هرگونه تغییری روی درایو اعمال کنید این دستور دیگه نمی تونه اون فایل پاک شده رو برگردونه. پس اگه تصادفا فایلی رو پاک کردید که لازمش داشتید سریعا تمام برنامه هایی رو که دارید اجرا می کنید متوقف کنید و از این دستور استفاده کنید.
تمام فایل های پاک شده قابل بازیابی رو برمی گردونه
لیست تمام فایل های پاک شده قابل بازیابی رو نشون می ده ( قبل از بازیابی کردن)
مثال:
برای undelete کردن تمام فایل های قابل بازیابی از دایرکتوری LETTERS تایپ می کنیم:
کد:
undelete \letters\*.* /all
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
SCANDISK
شکل کلی دستور:
کد:
SCANDISK
SCANDISK [d: [d: . . .]|/all][/checkonly|/autofix[/nosave]
SCANDISK volume-name[/checkonly|/autofix[/nosave]
SCANDISK /fragment [d:][path]filename
عمل: اسکن کردن , پیدا کردن ارور ها و تصحیح آن ها
دستور ScanDisk ارورهای قسمت های زیر رو پیدا می کنه و اون ها رو فیکس می کنه:
کد:
File allocation table (FAT)
File system structure (lost clusters, crosslinked files)
Directory tree structure
Physical surface of the drive (bad clusters)
DoubleSpace volume header (MDBPB)
DoubleSpace volume file structure (MDFAT)
DoubleSpace compression structure
DoubleSpace volume signatures
MS-DOS boot sector
و از این دستور برای چک کردن درایو های زیر می شه استفاده کرد:
کد:
Hard drives
DoubleSpace drives
Floppy disk drives
RAM drives
Memory cards
دستور ScanDisk در ورژن های 6.2 به بعد داس هستش و نمی شه از اون برای چک کردن درایو CD-ROM و network drives و درایوهایی که با یکی از دستورات ASSIGN, SUBST و یا JOIN ایجاد شدن یا درایوهایی که با INTERLINK ایجاد شدن استفاده کرد.
نکته: زمانی که برنامه ی دیگه ای در حال اجراست نمی تونید از این دستور استفاده کنید. همچنین می تونید با سویچ /CHECKONLY فقط درایو رو چک کنید بدون فیکس کردن ارورها.
برای چک کردن و تصحیح ارورها در تمام درایوها
با استفاده از این قسمت دیگه برنامه بعد از پیدا کردن یک ارور از شما اجازه نمی گیره و خودش اونو فیکس می کنه. بطور پیش فرض زمانی که از /autofix استفاده می کنید ScanDisk کلاسترهای گم شده فایل هایی رو که پیدا می کنه در دایرکتوری root ذخیره می کنه ( قبلا اینو گفته بودم! یادتون می یاد؟) حالا اگه می خواید بجای ذخیره شدن این کلاسترها اون ها پاک بشن از سویچ /NOSAVE استفاده کنید.
فقط درایو رو چک می کنه بدون فیکس کردن ارورها
مثال:
اگه بخوایم درایو جاری رو اسکن و ارورهاش رو فیکس کنیم می نویسیم:
برای چک کردن تمام درایوها :
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
SHARE
شکل کلی دستور:
عمل: SHARE کردن فایل ها
SHARE کردن یعنی ایجاد این قابلیت برای فایل که توسط user های دیگه هم قابل دسترسی و استفاده باشه
مشخص کردن میزان فضایی که ( بر حسب بایت) داس لازم داره تا اطلاعات مربوط به SHARE کردن فایل ها رو در اونجا قرار بده. اگه در این قسمت عددی رو قرار ندید بطور پیش فرض 2048 بایت در نظر گرفته می شه.
مثال:
تایپ کنید SHARE و ببینید چی می بینید!
موضوع جالب اینه که اگه در قسمت help دنبال این دستور بگردید چیزی ازش پیدا نمی کنید اما به هر حال هست! چراشو من که نفهمیدم اگه شما می دونید بگید من هم یاد بگیرم!
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-
REPLACE
شکل کلی دستور:
کد:
REPLACE [d:][path]filename [d:][path][/P][/R][/S][/U][/W]
عمل: جابجا کردن فایل های ذخیره شده در یک مکان با فایل هایی با همان نام اما در مکانی دیگر
از کاراکترهای * و ؟ هم می تونید استفاده کنید تا فایل ها رو جابجا کنید اما یادتون باشه نمی تونید فایل های مخفی و سیستمی رو با این روش جابجا کنید.
پس از پایان کار پیغام زیر روی صفحه ظاهر می شه:
کد:
n file(s) added/replaced
و همینطور یکی از کدهای زیر:
کد:
0 - Command completed successfully
1 - Command line error
2 - File not found
3 - Path not found
5 - Access denied
8 - Insufficient memory available
15 - Invalid drive
برای هر جابجایی ازتون اجازه می گیره
با این سویچ جابجایی شامل فایل های فقط خواندنی هم می شه . در صورتیکه از این سویچ استفاده نکنید و بخواید فایل های فقط خواندنی رو جابجا کنید داس خطا می گیره
غیر از دایرکتوری مبدا تمام ساب دایرکتوریهای اون رو هم جابجا می کنه
فایل ها یا دایرکتوری هایی از مبدا رو جابجا می کنه که نسبت به نسخه هم نامشون در مقصد قدیمی تر باشن
داس قبل از آغاز کارش صبر می کنه تا شما دیسکت رو وارد کنید
مثال:
برای جابجا کردن تمام فایل های MAIN.EXE در تمام ساب دایرکتوری های دایرکتوری Root در درایو C با فایلی هم نام که در دایرکتوری SPECIAL در درایو A قرار داره تایپ می کنیم:
کد:
REPLACE a: \special\main.exe c:\/s
ادامه داره ...