ام-‌اس-داس (به انگلیسی: MS-DOS) (کوتاه شده‌ی Microsoft Disk Operating System) یک سیستم عامل تجاری مایکروسافت می‌باشد.

اولین نسخه‌ی ام‌اس-داس در سال ۱۹۸۱ منتشر شد و شامل هشت نسخه اصلی است و مایکروسافت توسعه‌ی آن را در سال ۲۰۰۰ متوقف کرد. سیستم عامل تک کاربره و تک کاره با خط فرمانی که در سال ۱۹۸۱ برای کامپیوتر شخصی آی‌بی‌ام و سازگار با آن توسط مایکروسافت منتشر شد. نسخه اصلی DOS توسط یک شرکت کوچک در سیاتل به منظور کارهای آزمایشگاهی ایجاد شده بود. از آنجا که مایکروسافت قرار بود سیستم عاملی برای آی‌بی‌ام تهیه کند بنابراين آن نسخه را خریداری نمود و برنامه را تهیه کرد. مایکروسافت بعدها نگارشهای بالاتری از داس ارائه نمود. داس تا مدتها یکی از گسترده‌ترین سیستم‌های عامل محسوب می‌شد.



اگه به محیط خط فرمان ویندوز علاقمند باشید و بخواهید با آنها کار کنید لازمه که یه سری دستورات را بلد باشید. اگه توی کامند پرامت تایپ کنید هلپ (Help) یه سری از این دستورات همراه با توضیحات را به شما نشان خواهد داد. اما کلآ دستورات داس زیاد و متنوع هستند. ولی به علت وجود محیط های گرافیکی کاربرها نیازی به یادگیری اون حس نمی کنند مگر اینکه بخواهند یک کار دیگه ای با آنها داشته باشد. (مانند هک!)
ولی من شخصآ خیلی به محیط خط فرمان علاقه دارم و به نظرم از محیط گرافیکی بسیار بهتر است! یک مدت هم دنبال منابع خوبی برای دستورات داس می گشتم چون این دستورها رو می شود پخش و پلا از هر طرف پیدا کرد اما اگر توی سایتهای زبان انگلیسی بگردید. منابع زیادی پیدا می کنید.

برای توضیحات کامل و جامع به ادامه مطلب مراجعه نمایید...


حالا اول می ریم سراغ یه مقدمه:
Dos چیه؟

داس مخفف کلمه Disc Operating System هستش به معنی سیستم عامل بر روی دیسک (اگه گفتین چرا؟ ). سیستم عامل همونطور که می دونین به مجموعه ای از برنامه ها می گن که سخت افزار رو اداره می کنه. اگرچه این سیستم عامله که برنامه ها رو کنترل می کنه اما کاربر می تونه با سیستم عامل ارتباط برقرار کنه و فرمان های خودش رو به اون ابلاغ کنه.
این دستورات شبیه کلمات انگلیسی هستند که همین کار با اونه رو آسونتر میکنه. وقتی فرمانی رو از طریق صفحه کلید تایپ می کنیم این فرمان از طریق پوسته یا Shell به سیستم عامل اعلام می شه تا سیستم عامل اونها رو اجرا کنه. ( حالا اینکه شل چیه بعدا توضیح می دم!)

حالا کارمون رو شروع می کنیم:
در Run تایپ کنید Cmd و اینتر رو بزنید آها! حالا شما وارد محیط خط فرمان شدید!
حالا از دستورات بسیار ابتدایی شروع می کنیم :


TIME

شکل کلی دستور:

کد:
TIME
کد:
TIME hh:mm[:ss][.cc][A|P]
عمل: بدست آوردن زمان سیستم و دادن زمان جدید به آن

می تونید این دستور رو به تنهایی وارد کنید (خط اول) یا اینکه در مقابل دستور زمان جدیدی رو وارد کنید ( خط دوم) که hh نشان دهنده ساعت، mm نشان دهنده دقیقه و ss نشان دهنده ثانیه است و cc هم صدم ثانیه ! A و P هم نشان دهنده AM و PM هستن که البته می تونید به جای استفاده از این دوتای آخر ساعت رو مثلا اگه 2 ظهر هست بصورت 14 وارد کنید.
در ضمن موارد داخل کروشه اختیاری هستن و می تونید هیچ مقداری بهشون ندید

مثال:
بعد از وارد کردن فرمان TIME خطوط زیر ظاهر می شن:

کد:
Current time is hh:mm:ss

کد:
Enter new time
:__

اگه نمی خواید که زمان جدیدی به سیستم بدید اینتر رو بزنید تا از دستور خارج بشید
برای خارج شدن از محیط خط فرمان هم Exit بنویسید و اینتر رو بزنید.

-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-


DATE

شکل دستوری:

DATE
کد:
DATE mm-dd-yy
عمل: بدست آوردن تاریخ سیستم و وارد کردن تاریخ جدید

در این دستور هم مثل دستور TIME اگر دستور را به تنهایی بکار ببرید دو خط زیر ظاهر می شن:

کد:
Current date is Sat 06-11-1994Enter new date (mm-dd-yy):
یا اینکه می تونید مثل دستور دوم همزمان با تایپ دستور، تاریخ جدید را هم وارد کنید که در اینجا mm نشاندهنده ماه، dd نشاندهنده روز و yy نشاندهنده سال است
اگر نمی خواید تاریخ جدیدی به سیستم بدید اینتر رو بزنید تا از دستور خارج بشید.

-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-


CHDIR CD

شکل دستوری:

کد:
CHDIR (CD) [d:]pathCHDIR (CD)[..]
عمل: تغییر دایرکتوری یا اعلام مسیر دایرکتوری جاری

از این دستور برای تغییر دایرکتوری جاری استفاده می شه. یعنی چی؟ یعنی مثلا شما در دایرکتوری Windows هستید و می خواید به دایرکتوری My Documents برید. خب در محیط گرافیکی کاری که می کنید اینه که پنجره رو می بندید و می رید سراغ آیکون My Documents ! اما در محیط خط فرمان از این فرمان استفاده می کنیم. معمولا از cd بیشتر از chdir استفاده می شه.
[d:] یعنی اینکه شما می خواید از دایرکتوری جاری ( دایرکتوری که الان در اون هستید) به دایرکتوری دیگه ای در درایو دیگه ای برید. مثلا از C به D . اما اگه دایرکتوری مقصد در همان درایو هستش که شما الان در اون هستید این قسمت از دستور رو می تونید حذف کنید.
path هم مسیر دایرکتوری مقصد هستش. نکته مهم اینه که طول مسیری که می نویسید از 63 کاراکتر نباید طولانی تر بشه.
در خط دوم [..] نشاندهنده چیه؟
اول یه توضیح کوچولو: فرض کنید در دایرکتوری new folder هستید. حالا در این دایرکتوری چند تا دایرکتوری دیگه هم ممکنه داشته باشید که همه اینها فرزندان دایرکتوری new folder محسوب می شن و new folder هم پدرشون یا Parent directory نامیده می شه!
با دستور cd.. شما می تونید به برگردید یعنی یه قدم به عقب یعنی به Parent directory .
اگه دستور رو خالی بکار ببرید مسیر دایرکتوری فعلی رو بهتون نشون می ده.

مثال:
دو دایرکتوری به نامهای WORDS و FILES ایجاد کنید. داخل دایرکتوری WORDS ، دایرکتوریLETTERS رو ایجاد کنید. حالا برای رفتن به دایرکتوریLETTERS این دستور رو می نویسیم:

کد:
cd\words\letters
موضوع دیگه بحث دایرکتوریROOT هستش. همونطور که از اسمش پیداست به معنای ریشه یعنی جد جد دایرکتوری های یک مسیر! یعنی دایرکتوری ای که دیگه براش دایرکتوری parent نداشته باشیم.

حالا اگه تایپ کنید:

کد:
cd\
می رید به دایرکتوری ریشه.
در این مثال دایرکتوری ریشه WORDS هستش.
برای وارد شدن به دایرکتوری بعدی در هر مسیر نیازی به وارد کردن بک اسلش ( / ) ندارید یعنی مثلا برای وارد شدن به دایرکتوری LETTERS در مثالی که زدم می تونید بنویسید:

کد:
cd letters
و اگه بخواید یه قدم به عقب برگردید ( یعنی به parent directory ) از فرمان زیر استفاده کنید:

کد:
cd
..
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-


DIR

شکل کلی دستور:

کد:
DIR [d:][path][filename] [/A:(attributes)] [/O:(order)] [/B]
عمل:

نمایش تمام فایلها و ساب دایرکتوری های موجود در یک دایرکتوری

این دستور علاوه بر نام فایلها و دایرکتوری ها، حجم اونها و حجم فضای آزاد روی دیسک و همینطور زمان و روز تولید هر دایرکتوری رو هم نشون می ده.

کد:
[/A:(attributes)]
برای مشخص کردن نوع فایل از این دستور استفاده می کنیم. البته بهتره بگیم صفت فایل که شامل موارد زیر می شه:

کد:
H|-H - Hidden (or not hidden) files.S|-S - System (or non system) files.D|-D - Directories (or files only).R|-R - Read-only (or read/write) files.A|-A - Archivable (or already archived) files
یعنی متلا اگه میخواید لیستی از فایل ها و دایرکتوری های مخفی (hidden) رو داشته باشید تایپ می کنید:

کد:
dir /a:h
یا مثلا برای دیدن لیست فایلهای فقط خواندنی (read only) می نویسیم:

کد:
dir /a:r
کد:
[/O:(order)]
اگه بخوایم لیستی که ظاهر می شه مشخصات خاصی رو داشته باشه از این دستور استفاده می کنیم:

کد:
N|-N - By name (alphabetical or reverse alphabetical).E|-E - By extension ( alphabetical or reverse alphabetical).D|-D - By date and time (chronologically or reverse).S|-S - By size (increasing or decreasing).C|-C - Sorts by DoubleSpace compression ratio lowest to highest or highest to lowest. (Version 6.0 only)G|-G - Group directories (before, or after) other files.
مثلا برای منظم کردن لیست به ترتیب حروف الفبای لاتین (N:by name) از دستور زیر استفاده می کنیم:

کد:
dir /o:n
یا مثلا برای مرتب کردن بر اساس تاریخ ( date):

کد:
dir /o:d
و...

کد:
[/B]
فقط نام ها رو نمایش می ده

یک چیز مهمی که می خواستم بگم اینه که فکر نکنین همین دستور dir فقط همین قدره ها! نه! هر کدوم از این دستورها کلی چیزهای ریز و درشت دارن که من اصلی ترین هاش رو گفتم چون اگه بخوام همه رو دونه دونه توضیح بدم کتاب می شه! مثلا همین dir ناگفته هایی داره مثل:

کد:
[/C][/CH][/S][/P][/W]
گه دیگه توضیح جزیی همه سخته برین خودتون پیدا کنین!

از کاراکترهای ؟ و * هم می شه استفاده های خوبی اینجا کرد.
مثال:
برای لیست کردن تمام فایلهای دارای پسوند txt در یک دایرکتوری تایپ می کنیم:

کد:
dir *.txt
یا برای نمایش فایلهای درایو C بدون هیچ محدودیتی می نویسیم:

کد:
dir c