کد:
اين دستورات همون*هايي هستند که در سيستم*عامل باستاني!! مايکروسافت يعني MS DOS استفاده مي*شدند. کاربران ويندوز معمولا نيازي به يادگيري اونا احساس نمي*کنند چون همه کارها رو در محيط گرافيکي و معمولا از طريق ماوس انجام مي*دهند. ولي چون shell حالت متني دارد، شما بايد با اين دستورات آشنا بشويد. shell رو باز کنيد. متن زير ظاهر ميشه:
Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.
I:\>
دقت کنيد که سيستم*عاملي که من shell رو در اون آوردم، ويندوز ۲۰۰۰ است و درايو پيش*فرض من که معمولا همان درايوي است که ويندوز در اون نصب شده، درايو I است. شما مسلما چيز متفاوتي خواهيد ديد. مي*نويسم:
I:\> C:
تا به درايو C وارد بشم. حالا prompt تغيير مي*کنه و نشون ميده که الان در درايو C هستم:
C:\>
مي*نويسم:
C:\> dir
و ليست زير ظاهر ميشه:
Volume in drive C is FREE-START
Volume Serial Number is 3623-07E6
Directory of C:\
09/06/2003 06:29a <DIR> GAMES
08/15/2003 06:20p 1,806,727 phpMyAdmin-2.5.3-rc1-php.zip
06/17/2002 07:06p <DIR> upload
06/19/2002 07:02p <DIR> mailserver
09/13/2002 03:59a 8,053 port-tcp-c.c
02/27/2003 10:28p <DIR> mp3
04/18/2003 07:38a 1,152 araz.pl
3 File(s) 1,815,932 bytes
4 Dir(s) 95,502,336 bytes free
اينها در واقع ليست فايل*ها و دايرکتوري*هاي موجود در درايو C کامپيوتر من است. مثلا اينجا GAMES يک فولدر ( دايرکتوري) است چون در در اون سطر کلمه <DIR> اومده که معني دايرکتوري ميده. ولي araz.pl که آخرين سطر از ليست*ه،* فايل*ه. حالا مي*نويسم:
C:\> cd games
و جواب مي*شنوم:
C:\GAMES>
يعني وارد فولدري بع اسم games شده*ام. بازم دستور dir رو مي*نويسم که ببينم در اين فولدر چه فايل يا فولدرهايي هست و جواب مي*شنوم:
Volume in drive C is FREE-START
Volume Serial Number is 3623-07E6
Directory of C:\GAMES
09/06/2003 06:29a <DIR> .
09/06/2003 06:29a <DIR> ..
09/06/2003 06:29a <DIR> FORMULA1
09/06/2003 06:35a <DIR> SP
09/06/2003 06:36a <DIR> SUPER
09/06/2003 06:39a <DIR> UF
0 File(s) 0 bytes
6 Dir(s) 95,502,336 bytes free
که مي*گه ۶ دايرکتوري وجود داره. دوتاي اولي دايرکتوري*هاي واقعي نيستند،* چون اگه بنويسم:
C:\GAMES> cd .
جواب مي*گيرم:
C:\GAMES>
يعني هيچ اتفاقي نيفتاد. و اگه بنويسم:
C:\GAMES> cd ..
جواب مي*شنوم:
C:\>
يعني يه فولدر به عقب برگشتم و اومدم به همون ريشه درايو C که قبلا بودم. پس الان در درايو C هستم و چون قبلا ديده*ام که فايلي به اسم araz.pl در اون هست مي*خوام محتويات اين فايل متني رو ببينم. مي*نويسم:
C:\> type araz.pl
و جواب مي*شنوم:
#!/usr/bin/perl
print "Content-type: text/html\n\n";
use Socket;
my ($remote, $port, @thataddr, $that, $them, $proto, $getpage );
$remote = shift || 'www.securitytracker.com';
$port = 80;
@thataddr=gethostbyname($remote) or die "Not Connected";
$that=pack('Sna4x8',AF_INET, $port, $thataddr[4]);
$proto=getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto) or die $!;
connect(SOCK, $that) or die $!;
........
اين محتويات فايل araz.pl است. مي*خوام يک متني فايل جديد بسازم، که محتوياتش فقط يک سطر باشه مثلا salam bar to و نامش هم باشه ali1000.txt براي اين*کار چند راه وجود داره که دو تاشو مي*گم:
۱- مي*تونيد بنويسيد:
C:\> echo salam bar to > ali1000.txt
۲- و مي*تونيد بنويسيد:
C:\> copy con ali1000.txt
و enter زده و جمله!! salam bar to را اونجا تايپ کنيد و وقتي تمام شد، ترکيب: CTRL + Z رو فشار بديد که فايل تموم بشه.
در هر دو حالت چون ما در درايو C و در ريشه ( يعني نه در يک فولدر خاص ) بوديم، فايل همين*جا درست ميشه و اگه دستور dir رو اجرا کنيد،*مي*بينيد که يک فايل جديد به ليست اضافه شده. حالا مي*تونيد با دستور:
C:\> type ali1000.txt
محتويات فايل رو ببينيد، اگرچه الانش*هم مي*دونيد چي هست! مي*خواهيم يک فولدر جديد به اسم tur2 بسازيم. مي*نويسيم:
C:\> md tur2
حالا اگر dir رو بنويسم، مي*بينم که فولدر جديد ايجاد شده. حالا مي*خوام برم تو فولدري که ساختم. مي*نويسم:
C:\> cd tur2
و بعد dir مي*گيرم. مي*بينم فعلا فقط همان دو فولدر . و .. در اينجا وجود داره که قبلا گفتم چي* هستند. اگه بخوام يه فولدر جديد در داخل اين فولدر tur2 به اسم far30 بسازم،* مي*نويسم:
C:\tur2> md far30
و اگر dir بگيرم، مي*بينم اينها وجود دارند:
Volume in drive C is FREE-START
Volume Serial Number is 3623-07E6
Directory of C:\tur2
10/04/2003 07:17p <DIR> .
10/04/2003 07:17p <DIR> ..
10/04/2003 07:18p <DIR> far30
0 File(s) 0 bytes
3 Dir(s) 95,477,760 bytes free
يعني فولدر far30 هم اضافه شده. مي*خوام فايل ali1000.txt رو از ريشه به فولدر far30 که خودش در فولدر tur2 است، کپي کنم. مي*نويسم:
C:\tur2> copy c:\ali1000.txt c:\tur2\far30
ساختارش خيلي ساده است، حتما فهميدين که اول دستور copy رو مي*نويسم. بعد با يک فاصله، مسير و نام فايلي که مي*خوام کپي کنم رو مي*نويسم و در آخر با يک فاصله، مسيري که مي*خوام فايل کپي بشه رو مي*نويسم. دقت کنيد که فايل اصلي دست نخورده باقي مي*مونه و يک کپي جديد در مسير جديد ايجاد ميشه. مي*تونستم همين فايل رو به درايو D کپي کنيم که در اين حالت بايد بنويسم:
C:\tur2> copy c:\ali1000.txt d:
که فايل به درايو D کپي بشه. حالا يه دستور جديد، مي*خوام فايل ali1000.txt رو از درايو C پاک کنم، مي*نويسم:
C:\tur2> del c:\ali1000.txt
دقت کنيد که چون من الان در فولدر tur2 هستم ولي فايلي که قراره پاک کنم در ريشه است، مسير رو بايد بنويسم، ولي اگر فايل همون*جايي که من الان هستم بود، مي*نوشتم:
C:\> del ali1000.txt
نکته مهم اينه که وقتي روي کامپيوتر خودم shell رو باز کردم، مي*تونم ببينم که کجا قرار دارم ( با نگاه به پرامت که مثلا اينجا <c:\tur2 بود*) ولي در shell ي که موقع هک کردن به اون مي*رسيم، معمولا اين پرامت ظاهر نميشه. اونجا چطوري ميشه فهميد کجا هستم؟ خيلي ساده*است با دستور زير:
cd
که جواب ميده:
c:\tur2
چون قبلا فايل ali1000.txt رو به فولدر far30 موجود در فولدر tur2 موجود در درايو C کپي کردم، مي*رم همونجا مي*نويسم:
C:\> cd c:\tur2\far30
اگه dir بگيرم، اينو مي*بينم:
Volume in drive C is FREE-START
Volume Serial Number is 3623-07E6
Directory of C:\tur2\far30
10/04/2003 07:18p <DIR> .
10/04/2003 07:18p <DIR> ..
10/04/2003 07:08p 15 ali1000.txt
1 File(s) 15 bytes
2 Dir(s) 95,477,760 bytes free
اگه بخوام اين فايل رو منتقل کنم به فولدر tur2 از درايو C (يعني به يه فولدر پايين تر) از دستور زير استفاده مي*کنم:
C:\tur2\far30> move ali1000.txt c:\tur2
فرق دستور move با copy اينه که فايل اصلي منتقل ميشه نه کپي! يعني از محل قبلي پاک ميشه و به محل جديد مياد!! حالا که فولدر far30 حالي شده (يعني هيچ فايل يا فولدري در اون نيست) مي*تونم پاکش کنم. اول ميام يه فولدر پايين*تر، با دستور:
C:\tur2\far30> cd ..
و با دستور جديد زير که مخصوص پاک کردن فولدر ( نه فايل ) است، فولدر far30 رو پاک مي*کنم:
C:\tur2> rd far30
و فولدر پاک ميشه. حالا مي*خوام اسم فايل ali1000.txt رو به araz.inc تغيير بدم، مي*نويسم:
C:\tur2> ren ali1000.txt araz.inc
يه dir بيريد که مطمئن بشين!! حالا مي*خوام يه کپي از اين فايل که اسمش هست araz.inc بگيرم ولي با اسم ali1000.inc و در همين فولدر. پس مي*نويسم:
C:\tur2> copy araz.inc ali1000.inc
حالا اگه dir بگيريد، ۲ تا فايل مي*بينيد. حالا مي*خوام هر دو تا فايل رو منتقل کنم به درايو C ولي به ريشه، مي*بينم که هر دو فايل حرف اولشون a است و پسوندشون inc مي*تونم به دو شکل بنويسم:
C:\tur2> move a*.inc c:\
ادامه دارد.........
علاقه مندی ها (Bookmarks)