loading
PLEASE DIRECT ANY QUESTIONS YOU MAY HAVE TO MY BLOG:
http://tamsanh.com/blog/2008/07/11/batch-tutorial-3-advanced-batch/

I do not visit instructables anymore, and you will get a faster response that way.

Hey Guys! Tam Nguyen here. It's been a long time coming, but it's here now! I present to you the next instalment of my Batch Tutorials!

You may (or may not) have read my other instructables:

Basics of Batch
Slightly More Advanded Batch

This Instructable borrows some elements from the first two Instructables. Namely:
ECHO Command
CD Command
DIR Command

If you have not read the other two, I suggest looking over those commands right-quick. I'll wait here.

Ok!

By the end of this Instructable, you will be intimate with:
START Command
SET Command
IF Command
GOTO Command
and
> and >> Parameters

With these commands, you will be able to make dynamic batch files which can change according to user input, and create and expand.

So let's open up that good 'ol Command Prompt and get started!

Run -> cmd

Alternatively, you can go to:

Start->Program Files->Accessories->Command Prompt

My explainations in this instructable got a little long, so I've split up some commands into more than one page mainly for aesthetic purposes; I liked seeing the pictures while reading the text without having to scroll up and down.

Rule of thumb for picture viewing; Usually after every Code Snippet, there is a picture.

Enjoy!

Step 1: START Command

The START Command is a nice little command which starts stuff!

It's a simple command, and will help us warm up before we get to the harder commands.

The parameters of the command are exactly what you think they are.
START ThingToBeStarted.exe
Pretty simple.
START WMPlayer.exe
Not only can you START .exe's, you can also type a website in, and it will open up in your default browser!
START www.Instructables.com
Pretty easy, eh? Ok. Now let's move on to the real meat of the Instructable: SET Command.

Step 2: SET Command - String Theory (1/4)

The SET Command: The Variable Definer.

Ah. Variables. The developer's ambrosia. Variables are bits of memory which are... err, variable. No IFs ANDs or NOTs about it! (lol, sorry). Ok! So how's this baby work?

Very simply, the parameters of the SET command are:

SET VariableName=Variable Value

SET by itself will create string variables.

SET TestVS=Test Variable String!

In this case, we just stored the value "Test Variable String!" into the variable TestVS.
Well that's all fun and games, but how do we retrieve the variable value? We use %.

Just add % around the variable name.

ECHO %TestVS%

Ok cool, but what else can it do?

Step 3: SET Command - Mr.Math (2/4)

Can it do math? Well let's make a simple batch to test it out.

@ECHO OFFSET Test=1ECHO %Test%SET Test=%Test%-1ECHO %Test%PAUSE

Aww, what happened? That should have worked! Wait a minute... what was that about SET commands only making strings?

Yes. The SET command by itself will only create a string variable, meaning it will create the most literal interpretation of the value.
It doesn't think of "1 - 1" equaling "0", it thinks of "1 - 1" equaling "1 - 1."
So how do we change that?

We want the variable not to be directly copied, but Evaluated. This means we want to turn it from a string into an expression! A very easy change, simply add a /a to the SET command.

Here's a simple batch file to see it in action, or you can just type it into the Command Prompt manual. I suggest the latter; it's much faster, and the code isn't too complicated, but if you really want the batch file, here it is:

@ECHO OFFSET /a Test=2+2ECHO %Test%PAUSE

Fantastic! It expressed it perfectly. Now we know what changes need to be made to our 'math test.bat'

@ECHO OFFSET /a Test=1ECHO %Test%SET /a Test=%Test%-1ECHO %Test%PAUSE

Ok. So let's run it!

Great! It worked perfectly! But what next?

Step 4: SET Command - User Input (3/4)

The SET also has the ability to prompt the user for input.

By adding /p to the SET parameters, it transforms it from a normal variable setter to a user-controlled variable setter.

SET /p UDefine=

With the /p, the program actually pauses, and waits for the User's input.

But wait, I don't see a /a parameter, does that mean that the variable is a string only?

Well, sort of. The /p of the parameters completely negates the /a, and if you attempt it, you simply get a Missing operand error. This means that the User Defined variable will not be able to evaluate expressions.

So what can one do?

Well, here's a tricky trick that I thought of that we can use.
The SET Command does not all the simultaneous use of parameters /p and /a, correct? Well, what about the sequential use of the parameters /a and /p?
Ahhh... you sly boots.

@ECHO OFFECHO Calculator Version 1.0ECHO.SET /p UDefine=SET /a UDefine=%UDefine%ECHO =ECHO %UDefine%ECHO.PAUSE

Nice calculator ya got there. If you haven't figured it out by now, the {{{ECHO.}}} is a blank line.

Isn't that cool-cool?

Step 5: SET Command - More Than Meets the Eye (4/4)

At this point, it may seem that the variables of the SET command is only good for strings, and expressions. Not true. The variables are, in fact, very very flexible, and are not just limited to ECHOs.

Have you tried just typing a variable by itself?

SET Test=Instructables%Test%

What a weird error... it says that the command "Instructables" is not recognized, not that %Test% had no syntax. So that means that DOS treats each variable like it was typed by hand. Well, what if...

SET Test=START cmd.exe%Test%

Awesome! It worked!

DOS treats each variable like it was typed by the user, and runs it accordingly. Here's an interesting code: (Just Copy/Paste; it's a bit tedious.)

@ECHO OffSET Variable1=ECSET Variable2=HSET Variable3=O CSET Variable4=ooSET Variable5=l!ECHO %Variable1%%Variable2%%Variable3%%Variable4%%Variable5%ECHO.%Variable1%%Variable2%%Variable3%%Variable4%%Variable5%Pause

Isn't that neat? Each variable contains two letters of the entire message (except Variable2), and putting the variables in order, each letter adds up, and finishes the entire command of ECHO Cool!

The SET command is one of the more complicated, and powerful commands of the DOS dictionary.

Step 6: IF Command - Everyone Is Equal (1/2)

That classic conditional operand. Basic, but powerful none-the-less.

For those who have never programmed before, the IF command is exactly how it sounds. If an expression in the syntax proves true (or NOT true) then the very next sequence of commands will carry out.

The basic command line goes like this:

IF %variable1%==%variable2% ECHO This part is executed
or if you have more than one syntax.
@ECHO OFFIF %variable1%==%variable2% (ECHO This part is executed.ECHO So is this.) ELSE (ECHO If variable1 doesn't = variable 2, this happens.ECHO and this happens too.)

Note: The peculiar placing of parenthesis is not because I don't believe in organized code, but because if they're not in those places, the whole IF snippet will not work. Thus, if there Is any error with your IF code, it's most likely because of the parenthesis.

To run this particular batch, I actually used the Command Prompt itself, so that I could set the variables without having to edit the IfVariableTest.bat multiple times.

Step 7: IF Command - But I'm Greater Than You (2/2)

Ok, so you've got a nice IF statement and all, and checking whether variables are equal or not is nice and all, but doesn't quite fit the bill. I want something to happen if variable1 is less than the other variable!

For those of us programmers, I know this seems like a simple task. Just do what all the other programming languages do!

Well hold your horses cowboy. Not so fast. A Batch file isn't just your regular ol' programming langage. Silly as it may seem, the "<" and ">" don't work with Batch files.
EQU - Equal - ==NEQ - Not EqualLSS - Less ThanGTR - Greater ThanLEQ - Less Than or Equal ToGEQ - Greater Than or Equal To
Just put these operands in place of the ==

Example:
IF 32 GTR 3 ECHO This Will Work
@ECHO OFFIF 32 GEQ 32 (ECHO 32 is Greater Than, or Equal to 32) ELSE (ECHO 32 is definitely Equal to 32)PAUSEIF 32 LSS 32 (ECHO 32 is Less Than 32? I think not.) ELSE (ECHO 32 is Not Less Than 32. End of story.)PAUSE

Step 8: GOTO Command

The GOTO Command. It does exactly what it says; it GOes TO a label in the batch file script.

To use this command, you must first have a label in place. Labels look like this:
:Label1
It's simply a colon before a non-spaced series of letters and/or numbers.

The GOTO command is structured like this:
GOTO Label1
It's That Easy!
Come to think of it, I'm not really sure why I didn't put this in the Slightly Advanced Batch.

In any case, this command can be used to repeat a batch file by simply GOTO a label that executes the GOTO command again.

@ECHO OFF:RepeatMeECHO This will be repeated unless you hit "CTRL-C"GOTO RepeatMe
The batch file speaks the truth, by the way. CTRL-C is the universal Pause and Prompt for Termination. CTRL-S is simply Pause. But Closing the window works just as well.

The GOTO can skip, or reorder your code as well.
GOTO TurnEOffGOTO MultipleGotoECHO This ECHO is going to be skipped.:MultipleGotoGOTO 3:ENDPAUSEEXIT:1ECHO The EndGOTO END:3ECHO This will be displayed firstGOTO 2:TurnEOff@ECHO OFFGOTO MultipleGoto:2ECHO This is second, even though it&apos;s last in the code.GOTO 1
The above code was structured confusingly on purpose to emphasize the GOTO's ability to jump around in the code.

Step 9: > Parameter (1/2)

This next bit isn't really a 'command,' but rather an added syntax into other commands. What it does is it takes the Output of a certain command, and can write it into a Text file. It's easier to explain if you see it in action first.
Its syntax is:
Command>Filename
Ok, so let's say we're in a certain directory. We then use the DIR Command, which, if you read the Basics of Batch, you would know as showing the contents of your current directory.
C:\Users\Neo\>DIR
Would normally output:
 Volume in drive C is HP Volume Serial Number is BC7E-E26C Directory of C:\Users\Neo06/30/2007  11:14 AM    <DIR>          .06/30/2007  11:14 AM    <DIR>          ..03/17/2007  06:41 PM    <DIR>          .idlerc02/19/2007  03:14 PM    <DIR>          Contacts06/19/2007  10:44 PM    <DIR>          Desktop06/29/2007  08:47 AM    <DIR>          Documents06/19/2007  10:35 AM    <DIR>          Downloads02/19/2007  03:14 PM    <DIR>          Favorites02/19/2007  03:14 PM    <DIR>          Links05/12/2007  04:01 PM    <DIR>          Music06/30/2007  01:20 AM    <DIR>          Pictures04/07/2007  03:08 PM    <DIR>          Saved Games02/19/2007  03:14 PM    <DIR>          Searches03/01/2007  07:23 PM           242,947 Test Record.wma06/19/2007  10:39 AM    <DIR>          Videos06/18/2007  09:57 AM         1,324,574 wp_screenprint_mc.pdf06/18/2007  09:59 AM        73,996,533 wp_tshirt_full.mp4               4 File(s)     75,564,054 bytes              14 Dir(s)  132,927,537,152 bytes free
But, if we add the > and to it...
C:\Users\Neo\DIR>DIRContents.txt
We don't get an output, but instead, we get a brand-spankin'-new Text File named DIRContents.txt which has the Output in it! Coolness!

But wait, there's a problem! I want to have multiple outputs in the same file, but my > just keeps overwriting it, and not adding it! What do I do?

Step 10: >> Parameter (2/2)

Well I'm glad you asked. That's what the >> Parameter is for!

The >> is just like the >, but instead of completely overwriting the specified file, we Add to it!

So let's try it.
DIR>>DIRContents.txt
Neat! Worked Perfectly! So wait. Does that mean that I can write anything I want into a text file? I want to try it!
Batch Is Awesome>Awesome.txt
What? Why didn't that work? It's because the parameter only writes the output of Legitimate Commands, not just anything you type in. But, this is a problem that is simply solved. Remember, the parameters record the Output of Commands. What command has an output that we can control?

Right! The ECHO Command!
ECHO Batch Is Awesome>Awesome.txtECHO I&apos;m so glad that I know it.>>Awesome.txt
Yay! Remember. The >> adds the Output to the very next line of the file.

Step 11: Example Implementation

Ok. So let's put it all together! Here are some sample codes I've made that use the commands I've shown you in this instructable.

This code will add 1 to a variable continually, and output the result indefinitely.
@ECHO OFFSET /a num=1:RepeatECHO %num%SET /a num=%num%+1GOTO Repeat

This code will start CMD.exe 5 times.
@ECHO OFFSET /a RepeatNum=5:OpenIF %RepeatNum%==0 GOTO EndSTART CMD.exeSET /a RepeatNum=%RepeatNum%-1GOTO Open:End

This code will create a batch file in the C:\Users\Neo, and will run it.
@ECHO OFFCHDIR C:\Users\NeoECHO @ECHO OFF>Hello.batECHO ECHO Hello!>>Hello.batECHO ECHO I&apos;m in your C Drive!>>Hello.batECHO PAUSE>>Hello.batC:\Users\Neo\Hello.batPause

This is a little game batch. You must guess the number.
@ECHO OFFSET /a GuessNum=0SET /a Answer=%RANDOM%ECHO Guess what Number I&apos;m thinking of.:RetrySET /p Guess=IF %Guess% LSS %Answer% ECHO My Number is Higher.IF %Guess% GTR %Answer% ECHO My Number is Lower.IF %Guess%==%Answer% GOTO ENDECHO.SET /a GuessNum=%GuessNum%+1GOTO Retry:ENDECHO You are Correct! The Answer was %Answer%ECHO It took %GuessNum% Guesses.ECHO.PAUSE
And this one, I like a lot. If you're not careful, however, it can get out of hand fairly quickly, depending on your computer's ability. What this file does is it indefinitely creates numbered text files in a directory called lolnumbers. Each of these text files contains the DIR of the lolnumbers directory. The thing is, the directory is constantly getting fuller and fuller with text files, so each consecutive text file is larger than the last. The result of this is a folder whose total size gets larger and larger every second.
@ECHO OFFSET /a num=1MKDIR lolnumbersCD lolnumbers:RestartDIR>%num%.txtSET /a num+=1GOTO Restart

These are pretty basic codes. Experiment with them to your heart's content.

Step 12: Conclusion: Final Notes

Phew. We covered a heck of a lot in this instructable. This one is, infact, 3 times longer than my last one. I hope ya'll enjoyed it!

Just a few reminders before I go.

Remember:
When SETing a variable, Never put a space between the variable and its value.

YES:
SET variable1=Value
The extra space will cause your variable to be blank.

NO:
SET variable1 = Value

Also, the multiple IFs. Remember to format the Parenthesis properly:

YES:
IF 1==1 (ECHO One Equals One!) ELSE (ECHO Something&apos;s wrong with this program.)

NO:
IF 1==1(ECHO One Equals One!)ELSE(ECHO Something&apos;s wrong with this program.)

Also, there are built-in variables as well.
%CD%%DATE%%TIME%%RANDOM%
%CD% Expands to the current directory. Basically, the path behind the first >
%DATE% and %TIME% are the Date and Time.
%RANDOM% gives a random number between 0 and 32767. The range cannot be changed, I don't think.

And that's basically it! I hope you enjoyed this instructable, I worked really hard on it.

Hopefully, it will make up for the 10 Month Absence.

Now the bad news. I will have a bit of trouble answering any questions in the next few months, because I will be out of Country. But if you do have a question, just leave a comment anyone. If I do get access to a computer, I'll be sure to answer, but I don't think that will be necessary; Instructables is a friendly community, and I'm Sure that someone out there will help you in your plight.

Happy Batching!
<p>I Made This Batch Calculator. Can Someone Develop it ???</p><p>:: Batch Calculator</p><p>@echo off</p><p>title Batch Calculator</p><p>color a</p><p>echo Welecome To Batch Calculator </p><p>echo ============================</p><p>:a</p><p>echo.</p><p>echo.</p><p>echo + = Add</p><p>echo - = Subtract</p><p>echo / = Division</p><p>echo * = Multiple</p><p>echo.</p><p>echo.</p><p>echo Type Your Calculation</p><p>echo.</p><p>set /p ui= </p><p>if %ui%==About (goto ab)</p><p>set /a ui=%ui%</p><p>echo.</p><p>echo Answer is %ui%</p><p>pause</p><p>:b</p><p>cls</p><p>echo Next Calculation ? (Y/N)</p><p>set /p nxt=</p><p>if %nxt%==y (goto a)</p><p>if %nxt%==Y (goto a)</p><p>if %nxt%==n (goto end)</p><p>if %nxt%==N (goto end)</p><p>echo Invalid Choice</p><p>goto b</p><p>:end </p><p>echo Thanks For Using Batch Calculator</p><p>Pause</p><p>exit</p><p>:ab</p><p>echo =====+Batch Calculator+=====</p><p>echo =====+Developed By HRS+=====</p><p>pause</p><p>cls</p><p>goto a</p><p>:: Developed By &lt;/HRS&gt;</p>
<p>it is too dificult to understand the previoius ones are better </p>
<p>Please help me with below requirement . I need to remove last blank line from the CSV file . I need it on Urgent basis. Please help me ..</p>
<p>NOBODY HERE?</p>
<p>THANK YOU M.R TECTECHNICALGUY</p>
Hem hem. Here it is an animation box, thank you. <br>@echo off <br>setlocal enabledelayedexpansion <br>set Counter=0 <br>set Schalter=2 <br>set Width=0 <br> <br> <br>:: The weird symbols are replaced by lines in the CMD-window <br>:: All options that are marked by a little point are finite <br>:: --- All the others are unfinite, the program has to be closed by X to <br>:: view another animation <br>:: --- &quot;c4: Star Wars&quot; is not infinite, but it takes quite a lot time <br> <br>:Start <br>call :ResetVariables <br>title Animation Box <br>mode con cols=80 lines=25 <br>echo &Atilde;‰&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;‹&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;‹&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Acirc;&raquo; <br>echo &Acirc;&ordm;&Atilde;&ordm;1: Installation &Acirc;&sup3;&Atilde;&ordm; 9: Arrow left &Acirc;&ordm;&Atilde;&ordm;c1: 1min &Acirc;&ordm; <br>echo &Acirc;&ordm; 2: Slow loading &Acirc;&sup3;&Atilde;&ordm;10: Arrow right &Acirc;&ordm;&Atilde;&ordm;c2: 2009 &Acirc;&ordm; <br>echo &Acirc;&ordm; 3: Fast loading &Acirc;&sup3; 11: Skull &Acirc;&ordm; c3: Bat disco &Acirc;&ordm; <br>echo &Acirc;&ordm; 4: Big loading &Acirc;&sup3;&Atilde;&ordm;12: Dos Techno Virus&Acirc;&ordm; c4: Star Wars &Acirc;&ordm; <br>echo &Atilde;Œ&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;…&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;Ž&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&sup1; <br>echo &Acirc;&ordm; 5: Matrix &Acirc;&sup3;&Atilde;&ordm;13: Winhound &Acirc;&ordm;&Atilde;&ordm;m1: Matrix part 1 &Acirc;&ordm; <br>echo &Acirc;&ordm; 6: Epilepsy &Acirc;&sup3;&Atilde;&ordm;14: Expand window &Acirc;&ordm;&Atilde;&ordm;m2: Matrix part 2 &Acirc;&ordm; <br>echo &Acirc;&ordm;&Atilde;&ordm;7: Naked woman &Acirc;&sup3; &Acirc;&ordm;&Atilde;&ordm;m3: Matrix part 3 &Acirc;&ordm; <br>echo &Acirc;&ordm; 8: Fill window &Acirc;&sup3; &Acirc;&ordm;&Atilde;&ordm;m4: Matrix part 4 &Acirc;&ordm; <br>echo &Atilde;ˆ&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;Š&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;Š&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Atilde;&Acirc;&frac14; <br>set /p choice=--^&gt; <br>cls <br>if &quot;%choice%&quot; == &quot;5&quot; set Schalter= <br>call :%choice% <br>goto :Start <br> <br> <br> <br> <br> <br> <br>:: &quot;Counter&quot; is the amount of finished %, yet (at last 100%) <br>:: &quot;Display&quot; is the progress bar <br>:: --- This bar consists of the half of the %-amount (at last 50) <br>:: --- The bar moves from left to right <br> <br>:1 <br>title Animation Box - Installation <br>set /a Counter=%Counter% + 1 <br>set /a Display=%Counter% / 2 <br>FOR /L %%A IN (1,1,%Display%) DO ( <br> set Display=!Display!&Acirc;&sup2; <br>) <br>cls <br>echo New files are copied... %Counter%%% <br>echo &Acirc;&sup2;!Display:~2,47! <br>ping localhost -n 1 &gt;nul <br>if &quot;%Counter%&quot; == &quot;100&quot; goto :1-End <br>goto :1 <br>:1-End <br>echo. <br>echo Installation complete. <br>pause &gt;nul <br>EXIT /B <br> <br> <br> <br> <br>:2 <br>cls <br>title Animation Box - Slow loading <br>echo Opening file. <br>echo. <br>echo I I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I&Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I&Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I&Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; &Acirc;&sup2;I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; &Acirc;&sup2;I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2; I <br>ping localhost -n 1 &gt;nul <br>cls <br>echo Opening file. <br>echo. <br>echo I &Acirc;&sup2;I <br>ping localhost -n 1 &gt;nul <br>cls <br>goto :2 <br> <br> <br> <br>:: &quot;Counter&quot; determines the length of the row <br>:: &quot;Display&quot; is the row <br>:: &quot;Schalter 1&quot; = From left to right <br>:: &quot;Schalter 2&quot; = From right to left <br> <br>:3 <br>title Animation Box - Fast loading <br>cls <br>echo [!Display!] <br>set Display= <br>if &quot;%Counter%&quot; == &quot;0&quot; set Schalter=1 <br>if &quot;!Schalter!&quot; == &quot;1&quot; set /a Counter=%Counter% + 1 <br>if &quot;%Counter%&quot; == &quot;41&quot; set Schalter=2 <br>if &quot;!Schalter!&quot; == &quot;2&quot; set /a Counter=%Counter% - 1 <br>if &quot;!Schalter!&quot; == &quot;1&quot; FOR /L %%A IN (1,1,%Counter%) DO set Display=!Display!&Acirc;&plusmn; <br>if &quot;!Schalter!&quot; == &quot;1&quot; FOR /L %%A IN (%Counter%,1,40) DO set Display=!Display! <br>if &quot;!Schalter!&quot; == &quot;2&quot; FOR /L %%A IN (1,1,%Counter%) DO set Display=!Display! <br>if &quot;!Schalter!&quot; == &quot;2&quot; FOR /L %%A IN (%Counter%,1,40) DO set Display=!Display!&Acirc;&plusmn; <br>goto :3 <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: The subpoint &quot;4_DisplaySpace&quot; is used to compress the animation's size in the file. <br>:: The FOR-part in the middle of the animation is used for the same reason. <br>:: --- It counts the amount of spaces between the left stars and the loadbar, and <br>:: between the right stars and the loadbar. <br>:: --- There are at last 65 spaces. <br>:: --- The entire animation counts 79 columns. The loadbar is 11 columns wide. <br>:: From the left 68 columns, 2 are the stars at the left and the right. <br>:: 66 columns left, 65 of them spaces (79 - 11 - 2 = 66) <br> <br>:: The variable &quot;line&quot; is used to compress the animation's size in the file, too. <br> <br>:4 <br>title Animation Box - Big loading <br>mode con lines=15 <br>goto :4_DisplayBars <br> <br>:4_DisplaySpace <br>echo ******************************************************************************* <br>ping localhost -n 1 &gt;nul <br>cls <br>echo. <br>echo. <br>echo. <br>echo. <br>echo ******************************************************************************* <br>exit /b <br> <br>:4_DisplayBars <br>call :4_DisplaySpace <br>echo * * <br>echo * * <br>echo * * <br>call :4_DisplaySpace <br>echo *8 * <br>echo *8 * <br>echo *8 * <br>call :4_DisplaySpace <br>echo *88 * <br>echo *88 * <br>echo *88 * <br>call :4_DisplaySpace <br>echo *888 * <br>echo *888 * <br>echo *888 * <br>call :4_DisplaySpace <br>echo * 888 * <br>echo * 888 * <br>echo * 888 * <br>call :4_DisplaySpace <br>echo *8 888 * <br>echo *8 888 * <br>echo *8 888 * <br>call :4_DisplaySpace <br>echo *88 888 * <br>echo *88 888 * <br>echo *88 888 * <br>call :4_DisplaySpace <br>echo *888 888 * <br>echo *888 888 * <br>echo *888 888 * <br>call :4_DisplaySpace <br>echo * 888 888 * <br>echo * 888 888 * <br>echo * 888 888 * <br>call :4_DisplaySpace <br>echo *8 888 888 * <br>echo *8 888 888 * <br>echo *8 888 888 * <br>call :4_DisplaySpace <br>echo *88 888 888 * <br>echo *88 888 888 * <br>echo *88 888 888 * <br>call :4_DisplaySpace <br>FOR /L %%A IN (0,1,66) DO ( <br> set Length= <br> set Width= <br> FOR /L %%D IN (1,1,%%A) DO set Length=!Length! <br> FOR /L %%E IN (%%A,1,65) DO set Width=!Width! <br> set Line=*!Length!888 888 888!Width!* <br> FOR /L %%R IN (1,1,3) DO echo !Line! <br> call :4_DisplaySpace <br>) <br>echo * 888 888 88* <br>echo * 888 888 88* <br>echo * 888 888 88* <br>call :4_DisplaySpace <br>echo * 888 888 8* <br>echo * 888 888 8* <br>echo * 888 888 8* <br>call :4_DisplaySpace <br>echo * 888 888 * <br>echo * 888 888 * <br>echo * 888 888 * <br>call :4_DisplaySpace <br>echo * 888 888* <br>echo * 888 888* <br>echo * 888 888* <br>call :4_DisplaySpace <br>echo * 888 88* <br>echo * 888 88* <br>echo * 888 88* <br>call :4_DisplaySpace <br>echo * 888 8* <br>echo * 888 8* <br>echo * 888 8* <br>call :4_DisplaySpace <br>echo * 888 * <br>echo * 888 * <br>echo * 888 * <br>call :4_DisplaySpace <br>echo * 888* <br>echo * 888* <br>echo * 888* <br>call :4_DisplaySpace <br>echo * 88* <br>echo * 88* <br>echo * 88* <br>call :4_DisplaySpace <br>echo * 8* <br>echo * 8* <br>echo * 8* <br>goto :4_DisplayBars <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: Matrix effect coming from below <br>:: <br>:: If &quot;Schalter&quot; equals a space (&quot; &quot;), then the figures are moved one space to the right <br>:: If &quot;Schalter&quot; equals nothing (&quot;&quot;), then the figures aren't moved. <br>:: <br>:: %%A equals the last line, yet (the one at the top) <br>:: %%B equals the new line (%%A moved one line towards the top) <br>:: --- %%B equals the last %%A <br>:: <br>:: In the last FOR-command, all lines are displayed. In case if the screen isn't filled, yet, <br>:: the program will put a blank (echo.) <br> <br>:5 <br>title Animation Box - Matrix <br>color 0a <br>ping localhost -n 1 &gt;nul <br>cls <br>if &quot;%Schalter%&quot; == &quot;&quot; (set Schalter= ) ELSE (set Schalter=) <br>FOR /L %%A IN (1,1,23) DO ( <br> set /a B=%%A + 1 <br> FOR %%B IN (!B!) DO set Line%%A=!Line%%B! <br>) <br>set Line24=%Schalter%%random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% %random:~0,1% <br>FOR /L %%A IN (1,1,24) DO if defined Line%%A (echo !Line%%A!) ELSE (echo.) <br>goto :5 <br> <br> <br> <br> <br> <br> <br>:: Flickering CMD-window in &quot;white-black&quot; &quot;black-white&quot; (background-font) <br> <br>:6 <br>title Animation Box - Epilepsy <br>ping localhost -n 1 &gt;nul <br>cls <br>if &quot;%color%&quot; == &quot;0f&quot; (set color=f0) ELSE (set color=0f) <br>color %color% <br>FOR /L %%A IN (1,1,9) DO echo. <br>echo 88888888 88 88 88 88 <br>echo 88 88 88 88 88 <br>echo 88 888888 88 <br>echo 88 88 88888888 888888 88 888888 888888 88 888888 <br>echo 88 88 88 88 88 88__88 88 88 88 88 88 88 88__88 <br>echo 88 88 88 88 88 88____ 888888 888888 888888 88 88____ <br>FOR /L %%A IN (1,1,8) DO echo. <br>goto :6 <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:7 <br>title Animation Box - Naked woman <br>color 05 <br>mode con lines=180 <br>echo .,,,,,.. <br>echo _.zJ??c,J$hhhhh:::::??c, <br>echo ,J?:::::J99?????h::?h:::::?h <br>echo z&acirc;€::::::$9999??h::::??h:?h:::?$. <br>echo J:::J$?::6;hh:::::??i:::?h::$::::$ <br>echo J::9F::hhh6T??h:??h:::?$:::?h::$:::$ <br>echo J::9?h?:::$:?$C:??h:??h:::9h::?h:?$::$ <br>echo ;F:JF9?:J?:$h::?h:::?h::?h::?h::?$::h::h <br>echo $::C:CjF:j?$9h::?h:::?h:::9h::?h::$::9:9? <br>echo $:$:$9?:C9?$:$:::?h::::$:::?h:::$::$::$:$. <br>echo CJ?9:C:$:$:9::$:::?h::::?h:::$:::$::9::$:$ <br>echo $$:$J:9:9J$:$::$:::?h::::?h:::?h::$::$:?h:, <br>echo C:F$:9:$$&acirc;€™&acirc;€?$::$:::?h::::?h:::?h::$::h:?:9 <br>echo :9:C::C?$&acirc;€™.`.$::h:::?h::::9::::$::9::?h::: <br>echo J:$:C::$:$&acirc;€™.`.`&acirc;€&quot;&acirc;€?:::?h::::$::::$::$::$:::$ <br>echo $:9:C:::$&acirc;€™`.`.`.`.&acirc;€œhjj?h::::$:::?h::h::::$ <br>echo $:9::::hc?Jccc`.`.`.`z$??h:::h:::$::9::9::9 <br>echo ?:9:9:::i&acirc;€™,cccJ&acirc;€`.`.`J&acirc;€™Plcc$h::::::$:?C:::9 <br>echo $:C:$:9'J$?$$$FP&acirc;€™.`jF3F`$$$ 3?h::::?:h::$:J <br>echo :$::$&acirc;€&acirc;€˜&acirc;€?c?$CJ`.`.$&acirc;€™.`?+??&acirc;€`.`h::::$::X::: <br>echo h?C:9`.`.`.`.`.`.`$&acirc;€™.`.`.`.`.&acirc;€œh:::9h:C::: <br>echo `h$:9`.`.`.`.`.`.`??`.`.`.`.`.`?h:::C:C:J <br>echo `hh?h.`.`.`.`.`.`.`L&acirc;€™`.`.`.`.`.3::hC:F:F <br>echo 3:$$,`.`.`.`.`.`;3`.`.`.`.`.:C:9:9:$ <br>echo ?h:?c`.`.`.`&acirc;€&quot;??&acirc;€`.`.`.`.`.`.3::$:$:F <br>echo ??h`.`.`.`.`.`.`.`.`.`.`.`.$??:$:P <br>echo ?,.`.`.cJ?????QI$?.`.`.`.$::$:$ <br>echo $,`.`.3?hc,c??$&acirc;€™`.`.`.`$:::P <br>echo $9,.`.`?hCCCJ&acirc;€`.`.`.`.z?9:J&acirc;€ <br>echo ?h?h`.`.`.`.`.`.`.`.,$;;;, <br>echo &acirc;€&quot;?,`.`.`.`.`.`.,$?;;;;9. <br>echo ?i.`.`.`.`.,J?;;;;;;;?c_ <br>echo $h,.`.`,cc?;;;;;;;;;;;;?c, <br>echo $;;???;;;;;;;;;;;;;;;;;;;;?hc, <br>echo 3;;;;;;&acirc;€™`.`.`.`.`.`;;;;;;;;;;;???hhhccc,,_ <br>echo ;;;;&acirc;€™`.`.`.`.`.`.`;;;;;;;;;;;&acirc;€™.`.`.`.`.`&acirc;€?h . <br>echo ;;;&acirc;€™.`.`.`.`.`.`;;;;;&acirc;€™.`.`.`.`.`;;;&acirc;€™.`.`.`.`? <br>echo $;;&acirc;€™`.`.;.`.,;;;;;&acirc;€™.`.`.`.`.,;;;;;&acirc;€™.`.`.`.`.`. <br>echo C;;&acirc;€™`.`,;;;;;;;&acirc;€™`.`.`.,;;;;;;&acirc;€™`.`.`.`.`.`.`.`. <br>echo ,$?;;&acirc;€™`.`;;;;;&acirc;€™.`.`.`;;;;;&acirc;€™.`.`.`.`.`.`.`.`.`.`. <br>echo ,,cJ??;$;;;&acirc;€™`.;;&acirc;€™.`.`.`,;;;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo ,=&acirc;€`.`.;;;;;;&acirc;€™.`.;;&acirc;€™.`.`,;;;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo ,P&acirc;€™`.`.`.`.`.`.`.`.;;;;;;;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo ,P&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo J&acirc;€`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo J&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo F`.`.`?`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo $&acirc;€™.`,J.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`ccc,.`.`. <br>echo $&acirc;€™.`J&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`;;;;;;;?$,.`. <br>echo ?`.;F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.;;;;;;;;;;?i`. <br>echo `L.P&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.;;;;;;;;;;;?h. <br>echo hP&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`:;;;;;;;;;;;;;$ <br>echo P&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`;;;;;;;;;;;;;$&acirc;€™ <br>echo ,P&acirc;€™.`.`.`.`.`.`.`.`.;;`.`.`.`.`.`.`.`.`.`.`.`.`.`j;;;;;;;;;;;&acirc;€ <br>echo ,P&acirc;€™`.`.`.`.`.`.`.`.`;;;:&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`;;;;;;;;;;F <br>echo J&acirc;€`.`.`.`.`.`.`.`.`.;;;;:&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`3;;;;;;;;;$ <br>echo d&acirc;€™.`.`.`.`.`.`.`.`.`.;;;;:&acirc;€™`.,J??hc`.`.`.`.`.`.`.`.`9;;;;;;;;;F <br>echo d?h.`.`.`.`.`.`.`.`.`;;9;;:&acirc;€™`;$;jj;?h.`.`.`.`.`.`.`.;$;;;;;;;;9' <br>echo Jj;9,`.`.`.`.`.`.`.`.`;j$;;&acirc;€™.`3CJ;$;;$.`.`.`.`.`.`.;C;;;;;;;;$ <br>echo C$;9'`.`.`.`.`.`.`.`.;3C;;&acirc;€™.`?C;T;;;$&acirc;€™.`.`.`.`.`.`.;j;;;;;;;;F <br>echo ?;;$.`.`.`.`.`.`.`..;;;3C;;&acirc;€™.`.?hjjUP&acirc;€™.`.`.`.`.`.`.;;3;;;;;;;;$ <br>echo ?9F;&acirc;€™.`.`.`.`.`.`.;;j;9C;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`;;;F;;;;;;;;; <br>echo h;;;.`.`.`.`.`..;;;$`;h;;;&acirc;€™`.`.`.`.`.`.`.`.`.`.;;;F;;;;;;;;$ <br>echo $;;;;.`.`.`.,;;;;9':;9;;;;`.`.`.`.`.`.`.`.`.;;;;F;;;;;&acirc;€™.`;F <br>echo $;;;;,.`.`;;;;;9F`.;;$;;;;,`.`.`.`.`.`.,;;;;j$;;&acirc;€™`.`.`.`$ <br>echo ?;;;;;;;;;;;;JF.`.;;;?h;;;;;;;;;;;;;;;;;;j?;;;`.`.`.`.,F <br>echo ?;;;;;;;;;$&acirc;€`.`.`;;;;$i;;;;;;;;;;;;;jj??;;;.`.`.`.&acirc;€œJ <br>echo `?h;;;;J?`.`.`.`.`;;;;???Jjjjjjjj??;;;;`.`.`.`.`.&acirc;€œF <br>echo &acirc;€3?&acirc;€˜`.`.`.`.;;&acirc;€™.`.`.;;;;;;;;;;;;&acirc;€™.`.`.`.`.`.`.`;F <br>echo 3`.`.`.`.`.;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$&acirc;€™ <br>echo 3`.`.`.`.`.;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.,F <br>echo ?`.`.`.`.`.;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.$&acirc;€™ <br>echo `h.`.`.`.`.;;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.F <br>echo h.`.`.`.`.;;;.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`3' <br>echo $.`.`.`.`.;;;&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo $.`.`.`.`.;;;&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.,F <br>echo .F.`.`.`.`.`;&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.3' <br>echo j`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.3 <br>echo F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`,;cc????ci,3, <br>echo J.`.`.`.`.`.`.`.`.`.`.`.`.`.`.,J?`.`.`.`.`.`.?L <br>echo J&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`3?`.`.`__&acirc;€&brvbar;`.`.`?c <br>echo .,jF`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.?c??&acirc;€&quot;&acirc;€œ&acirc;€&quot;h,.` .`.?? <br>echo .F&acirc;€™`h`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.uc??????.`.`.`?h <br>echo F`.$&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`zP&acirc;€™.`.`.`.`.`.`.`.`?c <br>echo 3?`$&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.c=&acirc;€`.`.`.`.`.`.`.`.`.`.`?c_, <br>echo J?&acirc;€™&acirc;€&acirc;€˜&acirc;€.`.`.`.`.`.`.`$h.`.`.`.`.`.J?`.`._uc=&acirc;€&quot;&acirc;€ `.`.`.`.`.`.`.`.`. <br>echo ?`.`3?.`.`.`.`.`.`.`$$:`.`.`.`.`?h_.,;P&acirc;€`.`.`.`.`.`.`.`.`.`.`.`.` <br>echo $&acirc;€™.`?,`.`.`.`.`.`.:$$&acirc;€™`.`.`.`.`.`;P&acirc;€`.`.`.`.`._,zJ?`.`.`.`.`.`.` <br>echo J??$&acirc;€™.`h`.`.`.`.`.`.`?P&acirc;€™`.`.`.`.`.`$&acirc;€™.`.,,ccc+?&acirc;€&quot;`.`.`.`.`.`.`.`.` <br>echo $&acirc;€™.`?J?.`.`.`.`.`.`.`.`.`.`.`.`.`.`.&acirc;€=&acirc;€3?`.`.`.`.`.`.`.`. `.`.`.`. <br>echo .$i`.`h.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`??`.`.`.,uc&acirc;€&quot;cu,_.`.`.` .`. <br>echo $&acirc;€™??&acirc;€&quot;`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`&acirc;€????&acirc;€`.`.` .`.`?h_`.`.`. <br>echo h`.3,.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`&acirc;€??$P <br>echo `?cP&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.?, <br>echo C`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`h <br>echo C`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`3, <br>echo F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.&acirc;€œh <br>echo F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.$ <br>echo F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.3, <br>echo h`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`h <br>echo h`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo $&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`,/.`.`.`.`.`.`.`.`.`.`.`.`3 <br>echo $&acirc;€™.`.`.`.`.\.`.`.`.`.`.`.`.`.`.`.`.j&acirc;€`.`.`.`.`.`.`.`.`.`.`.`.`? <br>echo $&acirc;€™.`.`.`.`.`?,.`.`.`.`,,,;;;;;;;;;J&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo 3`.`.`.`.`.`.?&acirc;€™;;;;;;;;;;;;;;;;;;J&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`. <br>echo 3`.`.`.`.`.`.`?;;;;;;;;;;;;;;;;;$&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`, <br>echo ?`.`.`.`.`.`.`.?;;;;;;;;;;;;;;;P&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`j <br>echo ?,.`.`.`.`.`.`.`?;;;;;;;;;;;;j?`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`3 <br>echo `h.`.`.`.`.`.`.`.L;;;;;;;;;;J&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo $&acirc;€™`.`.`.`.`.`.`.`L;;;;;;;;J&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo $&acirc;€™`.`.`.`.`.`.`.`.$;;;;;;;F.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo $&acirc;€™`.`.`.`.`.`.`.`.`?L;;;;P&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.,F <br>echo $&acirc;€™`.`.`.`.`.`.`.`.`.`?L;$&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.$&acirc;€™ <br>echo 3.`.`.`.`.`.`.`.`.`.`.`?F.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`,F <br>echo ?.`.`.`.`.`.`.`.`.`.`.,F`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$&acirc;€™ <br>echo `h`.`.`.`.`.`.`.`.`.`,P&acirc;€™`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`$ <br>echo h`.`.`.`.`.`.`.`.`.`J`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`F <br>echo $&acirc;€™.`.`.`.`.`.`.`.`.,P&acirc;€™.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.,F <br>echo ?`.`.`.`.`.`.`.`.`.J.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.j&acirc;€™ <br>echo `h.`.`.`.`.`.`.`.`.F.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.$ <br>echo h.`.`.`.`.`.`.`.`,F.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.` <br>echo. <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: &quot;Counter&quot; determines the heigth of the last row (no matter if from below or above) <br>:: &quot;Width&quot; determines the width of each line (from left to right) <br>:: &quot;Line%%A&quot; are the lines 1 to 24, undepending from their length or width <br>:: &quot;Schalter1&quot; = From above to below <br>:: &quot;Schalter2&quot; = From below to above <br> <br>:: :: ----Line1------------------------------------- <br>:: :: -C--Line2----------W-i-d-t-h------------------ <br>:: :: -o--Line3------------------------------------- <br>:: :: -u--Line4---------|---------Schalter 2-------- <br>:: :: -n--Line5---------|--------------------------- <br>:: :: -t--Line...-------V-------------A------------- <br>:: :: -e--Line23----------------------|------------- <br>:: :: -r--Line24----Schalter 1--------|------------- <br>:: :: ----Line25------------------------------------ <br> <br>:8 <br>title Animation Box - Fill window <br>cls <br>if &quot;%Counter%&quot; == &quot;0&quot; ( <br> set Schalter=1 <br> set /a Width=!Width! + 1 <br>) <br>if &quot;!Schalter!&quot; == &quot;1&quot; set /a Counter=%Counter% + 1 <br>if &quot;%Counter%&quot; == &quot;25&quot; ( <br> set Schalter=2 <br> set /a Width=!Width! + 1 <br>) <br>if &quot;!Schalter!&quot; == &quot;2&quot; set /a Counter=%Counter% - 1 <br>if &quot;!Schalter!&quot; == &quot;1&quot; FOR /L %%A IN (1,1,%Counter%) DO set Line%%A= <br>if &quot;!Schalter!&quot; == &quot;1&quot; FOR /L %%A IN (1,1,%Counter%) DO FOR /L %%B IN (1,1,!Width!) DO set Line%%A=!Line%%A!&Acirc;&plusmn; <br>if &quot;!Schalter!&quot; == &quot;2&quot; FOR /L %%A IN (24,-1,%Counter%) DO set Line%%A= <br>if &quot;!Schalter!&quot; == &quot;2&quot; FOR /L %%A IN (24,-1,%Counter%) DO FOR /L %%B IN (1,1,!Width!) DO set Line%%A=!Line%%A!&Acirc;&plusmn; <br>FOR /L %%A IN (1,1,24) DO if defined Line%%A echo !Line%%A! <br>ping localhost -n 1 &gt;nul <br>goto :8 <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:9 <br>title Animation Box - Arrow left <br>mode con lines=25 <br>echo. <br>echo. <br>echo. <br>echo. <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888888888888888888888888888888888888888888888 <br>echo _88888888888888888888888888888888888888888888888 <br>echo 88888888888888888888888888888888888888888888888 <br>echo 8888888888888888888888888888888888888888888888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>pause &gt;nul <br>exit /b <br> <br> <br> <br> <br> <br>:10 <br>title Animation Box - Arrow right <br>mode con lines=25 <br>echo. <br>echo. <br>echo. <br>echo. <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888888888888888888888888888888888888888888888 <br>echo 88888888888888888888888888888888888888888888888_ <br>echo 88888888888888888888888888888888888888888888888 <br>echo 8888888888888888888888888888888888888888888888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>echo 8888 <br>pause &gt;nul <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br>:: Blinking skull in &quot;black-red&quot; &quot;darkred-grey&quot; (background-font) <br> <br>:11 <br>title Animation Box - Skull <br>mode con lines=54 <br>echo. <br>echo _________ _________ <br>echo / \ / \ <br>echo / \ / \ <br>echo I OOO I I OOO I <br>echo I OOO I I OOO I <br>echo \ / \ / <br>echo \__ __/ \__ __/ <br>echo \ \ / / <br>echo \ \ ___________________ / / <br>echo \ \ _/ \_ / / <br>echo \ \ _/ \_ / / <br>echo \ \ _/ \_ / / <br>echo \ / ,adPba, ,adPba, \ / <br>echo \ / a8&quot;&quot;&quot;&quot;&quot;8a a8&quot;&quot;&quot;&quot;&quot;8a \ / <br>echo \/ Y8888888Y Y8888888Y \/ <br>echo / \@@@@@@@/ \@@@@@@@/ \ <br>echo I @@@@@ @@@@@ I <br>echo I ,aAa, I <br>echo I a&quot;&quot;&quot;&quot;&quot;a I <br>echo I 8YYYYY8 I <br>echo I 9888887 I <br>echo I @@@@@ I <br>echo I I <br>echo \ ___________________ / <br>echo / \ &Acirc;&sup2; &Acirc;&sup2; / \ <br>echo / \ _____&Acirc;&sup2;_________&Acirc;&sup2;___ / \ <br>echo / /\_ _/\ \ <br>echo / / \_ _/ \ \ <br>echo / / \_ _/ \ \ <br>echo / / \___________________/ \ \ <br>echo / / \ \ <br>echo __/ (_ _) \__ <br>echo / \ / \ <br>echo / \ / \ <br>echo I OOO I I OOO I <br>echo I OOO I I OOO I <br>echo \ / \ / <br>echo \_________/ \_________/ <br>echo. <br>echo. <br>echo 888888 88 88 88 <br>echo 8888888 88 88 88 <br>echo 88 88 88 88 88 <br>echo 88 88 aa88aa 88 88 <br>echo 88 88 YY88PY 88 88 <br>echo 88 88 88888888 88888888 88 88888888 88 <br>echo 88 88 88 88 88PYYY88 88 88888888 88 <br>echo 88 88 88888888 88 88 88 88 88 <br>echo 8888888 88 88aaaa88 88aaaaa 88 88 88 <br>echo 888888 88888888 888888888 88888888 88 88 88 <br> <br>:11_Colour <br>color 0c <br>FOR /L %%A IN (1,1,6) DO ping localhost -n 1 &gt;nul <br>color 47 <br>FOR /L %%A IN (1,1,6) DO ping localhost -n 1 &gt;nul <br>goto :11_Colour <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: Dos Techno Virus from the MS-DOS-times. It displays &quot;TECHNO&quot; all over again. <br>:: This animation stops after 25 lines (25 * 80 = 2000) <br>:: --- 25 = total amount of visible lines in one CMD-window <br>:: --- 80 = total amount of columns in one CMD-window <br> <br>:: It sets the variable &quot;M&quot; to the entire code <br>:: There are 3 spaces between each &quot;TECHNO&quot; <br> <br>:: When &quot;C&quot; equals 2,3 or 4, &quot;L&quot; is always a space <br>:: --- Else if &quot;C&quot; equals &quot;0&quot;, the next letter is added to &quot;M&quot; <br>:: --- Either T,E,C,H,N or O (= TECHNO) <br> <br>:: L = Letter <br>:: C = Changed <br>:: M = Message <br> <br>:12 <br>title Animation Box - Dos Techno Virus <br>set L= <br>set M= <br>set C=0 <br>FOR /L %%A IN (1,1,2000) DO ( <br> if &quot;!C!&quot; == &quot;1&quot; set C=0 <br> if &quot;!C!&quot; == &quot;2&quot; ( <br> set L= <br> set C=1 <br> ) <br> if &quot;!C!&quot; == &quot;3&quot; ( <br> set L= <br> set C=2 <br> ) <br> if &quot;!C!&quot; == &quot;4&quot; ( <br> set L= <br> set C=3 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot;N&quot; ( <br> set L=O <br> set C=4 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot;H&quot; ( <br> set L=N <br> set C=1 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot;C&quot; ( <br> set L=H <br> set C=1 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot;E&quot; ( <br> set L=C <br> set C=1 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot;T&quot; ( <br> set L=E <br> set C=1 <br> ) <br> if &quot;!C!&quot; == &quot;0&quot; if &quot;!L!&quot; == &quot; &quot; ( <br> set L=T <br> set C=1 <br> ) <br> if &quot;!Cursor!&quot; == &quot;&Atilde;Ÿ&quot; (set Cursor=&Atilde;œ) ELSE (set Cursor=&Atilde;Ÿ) <br> set M=!M:~0,-1!!L!!Cursor! <br> echo !M! <br> ping localhost -n 1 &gt;nul <br> cls <br>) <br>pause &gt;nul <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br>:: Animation of a tiger's head <br>:: ^ are used to allow | in the animation <br> <br>:13 <br>title Animation Box - Winhound <br>color 0c <br>echo $$$$ $$$$$$' <br>echo $$$$.$$$ $$$$$$$$. <br>echo $$$$$$'$$$$$$$$$$$$$$$$$$$$$$$$$ <br>echo $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ <br>echo $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ <br>echo $$$$$$$$$$....0&Atilde;&cedil;)`$$;$$$$$....0&Atilde;&cedil;) , , <br>echo $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ / / <br>echo $$$$$$$$$$_$$$$$$$$$$$$$$$$$$$$$$./ / <br>echo $$$$$$$$$_$$$$$'$$$$$$$$.$$.$$$`$$./ <br>echo $$$$$$$$$_$$$$$$$'$$$$$.$$$$.$$$`$$---&quot; <br>echo $$$$$$$$$$_$$$$$$$$$$$$$$____$$$$$$` <br>echo $$$$$$$$$$$$_$$$$$$$$$$$$$_$$$$$$ <br>echo $$$$$$$$$$$$$$$$___^| /'___^| /$ <br>echo $$$$$$$$$$$$$$_____^| /_____^| /$ <br>echo $$$$$$$$$$$$$__eeee^|/____$$^|/ <br>echo $$$$$$$$$$$$$__,___,____$$ <br>echo $$$$$$$$$$$$$$__,___,____$$ <br>echo $$$$$$$$$$$$ $$___/^|___,__$/^| <br>echo $$$$$$$$$$$ $$_/ ^|,_____/ ^| <br>echo $$$$$$$$$$ $/ ^|_____/ ^|$ <br>echo $$$$$$$$$ $$$$$$$$$$$$$ <br>echo $$$$$$$$ $$$$$$$$$$$ <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br>:: Expands the window <br>:: &quot;Lines&quot; is always 55 less than &quot;columns&quot; <br> <br>:14 <br>FOR /L %%A IN (81,1,160) DO ( <br> set /a lines=%%A - 55 <br> mode con cols=%%A lines=!lines! <br> ping localhost -n 1 &gt;nul <br>) <br>pause <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: &quot;(60,-1,0)&quot; counts backwards <br> <br>:C1 <br>title Animation Box - 1 min <br>FOR /L %%A IN (60, -1,0) DO ( <br> echo %%A <br> ping localhost -n 2 &gt;nul <br>) <br>msg %username% One minute is over. 2&gt;nul || pause &gt;nul <br>exit /b <br> <br> <br> <br> <br> <br> <br>:: The &quot;2009&quot; written in zeros is shown longer than the others <br>:: --- Still no reasonable explanation for that <br> <br>:C2 <br>title Animation Box - 2009 <br>echo __//////____///////____///////_____///////__ <br>echo _////////__/////////__/////////___//_____//_ <br>echo _//____//__//_____//__//_____//___//_____//_ <br>echo ______//___//_____//__//_____//____////////_ <br>echo _____//____//_____//__//_____//__________//_ <br>echo ____//_____//_____//__//_____//__________//_ <br>echo ___//______//_____//__//_____//___//_____//_ <br>echo _////////__/////////__/////////___//_____//_ <br>echo //////////__///////____///////_____///////__ <br>ping localhost -n 2 &gt;nul <br>cls <br>echo __000000____0000000____0000000_____0000000__ <br>echo _00000000__000000000__000000000___00_____00_ <br>echo _00____00__00_____00__00_____00___00_____00_ <br>echo ______00___00_____00__00_____00____00000000_ <br>echo _____00____00_____00__00_____00__________00_ <br>echo ____00_____00_____00__00_____00__________00_ <br>echo ___00______00_____00__00_____00___00_____00_ <br>echo _00000000__000000000__000000000___00_____00_ <br>echo 0000000000__0000000____0000000_____0000000__ <br>ping localhost-n 2 &gt;nul <br>cls <br>echo __888888____8888888____8888888_____8888888__ <br>echo _88888888__888888888__888888888___88_____88_ <br>echo _88____88__88_____88__88_____88___88_____88_ <br>echo ______88___88_____88__88_____88____88888888_ <br>echo _____88____88_____88__88_____88__________88_ <br>echo ____88_____88_____88__88_____88__________88_ <br>echo ___88______88_____88__88_____88___88_____88_ <br>echo _88888888__888888888__888888888___88_____88_ <br>echo 8888888888__8888888____8888888_____8888888__ <br>ping localhost -n 2 &gt;nul <br>cls <br>echo __@@@@@@____@@@@@@@____@@@@@@@_____@@@@@@@__ <br>echo _@@@@@@@@__@@@@@@@@@__@@@@@@@@@___@@_____@@_ <br>echo _@@____@@__@@_____@@__@@_____@@___@@_____@@_ <br>echo ______@@___@@_____@@__@@_____@@____@@@@@@@@_ <br>echo _____@@____@@_____@@__@@_____@@__________@@_ <br>echo ____@@_____@@_____@@__@@_____@@__________@@_ <br>echo ___@@______@@_____@@__@@_____@@___@@_____@@_ <br>echo _@@@@@@@@__@@@@@@@@@__@@@@@@@@@___@@_____@@_ <br>echo @@@@@@@@@@__@@@@@@@____@@@@@@@_____@@@@@@@__ <br>ping localhost -n 2 &gt;nul <br>exit /b <br> <br> <br> <br> <br> <br> <br>:: Background and font changing their colors <br> <br>:C3 <br>color 6a <br>ping localhost -n 1 &gt;nul <br>color 8f <br>ping localhost -n 1 &gt;nul <br>color 3e <br>ping localhost -n 1 &gt;nul <br>color f9 <br>ping localhost -n 1 &gt;nul <br>color 01 <br>ping localhost -n 1 &gt;nul <br>color 09 <br>ping localhost -n 1 &gt;nul <br>color 67 <br>ping localhost -n 1 &gt;nul <br>color 43 <br>ping localhost -n 1 &gt;nul <br>color d4 <br>ping localhost -n 1 &gt;nul <br>color a7 <br>ping localhost -n 1 &gt;nul <br>color c1 <br>ping localhost -n 1 &gt;nul <br>color f0 <br>ping localhost -n 1 &gt;nul <br>color b0 <br>ping localhost -n 1 &gt;nul <br>color ab <br>ping localhost -n 1 &gt;nul <br>color ce <br>ping localhost -n 1 &gt;nul <br>color 9e <br>ping localhost -n 1 &gt;nul <br>color a3 <br>ping localhost -n 1 &gt;nul <br>color 1e <br>ping localhost -n 1 &gt;nul <br>color fd <br>ping localhost -n 1 &gt;nul <br>color c7 <br>ping localhost -n 1 &gt;nul <br>color c4 <br>ping localhost -n 1 &gt;nul <br>color 91 <br>ping localhost -n 1 &gt;nul <br>color 61 <br>ping localhost -n 1 &gt;nul <br>color 6f <br>ping localhost -n 1 &gt;nul <br>color 01 <br>ping localhost -n 1 &gt;nul <br>goto :C3 <br> <br> <br> <br> <br> <br> <br> <br>:: Using &quot;telnet&quot; to connect to a website that shows Star Wars 3 in batch <br> <br>:C4 <br>telnet towel.blinkenlights.nl <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br>:: Matrix animations from a random picture found in google <br>:: --- There are 7 animations, 4 have been finished, yet <br>:: --- The animations are from the Linux command prompt <br> <br>:M1 <br>title File System - File Manager <br>color 0a <br>mode con cols=110 lines=50 <br>echo File Edit View Go Help <br>echo &Atilde;&reg; &Atilde;&reg; &Atilde;&reg; &Atilde;&reg; &Atilde;&reg; <br>echo &Atilde;š&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&iquest; &Atilde;‰&Atilde;&Atilde;&Atilde;&Acirc;&raquo;&Atilde;š&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&iquest;&Atilde;š&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&iquest; <br>echo &Acirc;&sup3; &Atilde;œ&Atilde;œ&Atilde;œ &Acirc;&sup3; &Acirc;&ordm;&Atilde;›&Atilde;› &Acirc;&ordm;&Acirc;&sup3;home&Acirc;&sup3;&Acirc;&sup3;&Atilde;› shaun&Acirc;&sup3; <br>echo &Acirc;&sup3; [ ] shaun &Acirc;&sup3; &Atilde;ˆ&Atilde;&Atilde;&Atilde;&Acirc;&frac14;&Atilde;€&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;™&Atilde;€&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;™ <br>echo &Acirc;&sup3; &Atilde;Ÿ&Atilde;Ÿ&Atilde;Ÿ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Atilde;š&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&iquest; <br>echo &Acirc;&sup3; -^&gt; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; Trash &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Atilde;„ &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Atilde;š&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Acirc;&iquest; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; Desktop &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Atilde;€&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;™ &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; bin boot dev etc home lib lost+found &Acirc;&sup3; <br>echo &Acirc;&sup3;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;›&Atilde;›&Atilde;œ&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;›&Atilde;›&Atilde;›&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;File&Atilde;&ordm;system&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;›&Atilde;›&Atilde;Ÿ&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Atilde;&ordm;&Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; media mnt opt proc root sbin srv &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Atilde;›&Atilde;›&Atilde;œ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Atilde;›&Atilde;›&Atilde;› &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Atilde;›&Atilde;›&Atilde;Ÿ &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; sys tmp usr var &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; &Acirc;&sup3; <br>echo &Atilde;€&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;™ &Atilde;€&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;„&Atilde;™ <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br>:M2 <br>title Animation Box - Matrix part 2 - shaun@hacktop: cmatrix <br>color 0a <br>mode con cols=89 lines=33 <br>echo e Y ^| - g ' ^| ? x 9 3 : $ S Q 7 / i <br>echo s I $ 3 ! o 2 } 7 L E 2 H I n 0 G ^( n ^^ <br>echo Q : ; : 9 + { &quot; 3 A R 8 + A &gt; &gt; y ] u j %% <br>echo + A ^) 7 B v M / \ &quot; 6 / # Z 5 t j F # s 0 <br>echo F ? _ { Z + N y K ^&amp; C ? n l b Y l \ X T c Y ^| <br>echo B @ r I m [ E C ? I Q 5 , { h W p y 7 @ B . 6 c <br>echo Z _ e X 3 &quot; V A V ` T h G r : s f 0 ` * , U <br>echo H Z I ^) x $ 5 1 q @ S = J R 9 B c ^&amp; + r S <br>echo $ S # $ E d D ] Y \ h t 0 S &quot; i y N Q ^| J <br>echo s P , C G h R = 7 W \ ^&gt; M ^&amp; 9 %% m x q ` b <br>echo ^&gt; j s s Q ) _ e C : \ \ ! . b X ^&lt; z - V w ' <br>echo $ R U ! D b J t ^&gt; P ^| ' ^^ ^&gt; ^&amp; P i K k f _ N 0 <br>echo : Y 1 A # e ! ^( , / C 4 h , ? P P v n z ? 2 b 0 <br>echo u q z $ v s p ; ; 2 w ' ] R \ 4 M o _ ? %% z H <br>echo r $ N # g S j K ; D z J C z 5 9 \ 4 A { c y * X p <br>echo _ S 0 k K = c B ^^ : J V P A { 2 ^( ' : I q R u 8 <br>echo C . 2 j = X \ . l L Y f $ q 3 C = D t g D _ b / <br>echo { ^&lt; %% 9 i - y a { F V u j X _ 3 v ^( 2 ^&amp; 9 - \ 3 <br>echo e 7 n v I &quot; V F 5 Q ? B + k , 5 e 4 _ <br>echo S : t ? D W 8 y D K ` @ U = @ 6 5 4 - <br>echo J ? t ' ) I ^^ n $ f * D c k r L Q J x e b <br>echo q ^^ u Q b 3 &quot; 0 \ x 0 6 %% ` n [ c 8 - m <br>echo + $ i L ? L Y P q Z Z f i 8 b w W f c t q <br>echo @ Z L d q ` V a [ ; S c p 6 o X 1 4 F i <br>echo / 4 ^&gt; : v ! q &quot; P &quot; d M c X 2 - ^&gt; t 5 i R <br>echo : ? o 9 c B / ? * 0 ^^ e S 1 r O N ^( x ? * E <br>echo 8 D # ^| L q 8 V / i 9 a k { ^) n A y 8 o { ` <br>echo 3 ? \ V t Y { ^&lt; G ^&amp; # } 5 c J e h p t Y = X $ \ <br>echo N ; @ ] 2 e ^( u U + y 7 v S Z k S { p x C ^&amp; ? T c 3 <br>echo K 1 z ^&amp; a F n 0 ' H m v F ; . b k b g o V ^| <br>echo &quot; F ( d k { - I r # D T ( ; T N 3 { G Q * H <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br>:M3 <br>title Animation Box - Matrix part 2 - shaun@hacktop: scrot -c -d 3 <br>mode con cols=89 lines=33 <br>color 0a <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; packer -Syu <br>echo Password: <br>echo :: Synchronizing package databases... <br>echo core is up to date <br>echo extra is up to date <br>echo community is up to date <br>echo :: Starting full system upgrade... <br>echo local database is up to date <br>echo :: Synchronizing aur database... <br>echo aur 6 6 [#############################] 100%% <br>echo :: Starting full aur upgrade... <br>echo local database is up to date <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; uptime <br>echo 03:16:23 up 5:10, 1 user, load average: 0.02, 0.08, 0.08 <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; acpi <br>echo Battery 0: Full, 100%% <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; uname -a <br>echo Linux hacktop 2.6.32-ARCH #1 SMP REEMPT Tue Feb 9 14:46:08 UTC 2010 i686 Intel(R) Pentium(R) M processor 1.73GHz Genuine Intel GNU /Linux <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; scrot -c -d 3 <br>echo Taking shot in 3.. 2.. 1.. &Atilde;› <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br>:M4 <br>title Animation Box - Matrix part 2 - shaun@hacktop: ~ <br>mode con cols=89 lines=33 <br>color 0a <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; archey <br>echo. <br>echo + <br>echo # OS: Arch Linux i686 <br>echo ### Hostname: hacktop <br>echo ##### Kernel: 2.6.32-ARCH <br>echo ####### Uptime: 5:10 <br>echo ;#######; Window Manager: wmii <br>echo ######### Desktop Environment: None found <br>echo ########### Packaged: 364 <br>echo ############# RAM: 274 MB / 2017 MB <br>echo ############### CPU: Intel(R) Pentium(R) M Processor 1,73 GHz <br>echo ####### ####### Shell: Zsh <br>echo .######; ;######. Root FS: 1.9G / 70G (ext3) <br>echo .#######; ;#######. <br>echo #########. .######### <br>echo ######' '###### <br>echo ;#### ####; <br>echo ##' '## <br>echo #' '# <br>echo. <br>echo &Atilde;š&Atilde;„[shaun@hacktop][~] <br>echo &Atilde;€&Atilde;„&Atilde;&frac34; [] <br>pause &gt;nul <br>color 07 <br>exit /b <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>:: Reset variables from all animations to prevent missexecution <br>:: &quot;exit /b&quot; quits the last used CALL-command <br> <br>:ResetVariables <br>set choice= <br>set Color= <br>set Counter=0 <br>set Height= <br>set Length= <br>set Line= <br>FOR /L %%A IN (1,1,25) DO set Line%%A= <br>set Schalter=2 <br>set Weight= <br>exit /b
Thoughts?
<p>my computer won't understand it</p>
<p>This is not advanced, this is basic!</p><p>check this:</p><p>@setlocal enableextensions enabledelayedexpansion</p><p>@echo off</p><p>color 17</p><p>title Movement 2 ~ Grid</p><p>cls</p><p>goto data</p><p>:data</p><p>set lespa= </p><p>set rispa= </p><p>set space=5</p><p>set err=0</p><p>set right=10</p><p>set left=10</p><p>:hud</p><p>cls</p><p>echo Move your character (X) with the WASD keys. Press R to reset</p><p>echo #######################</p><p>if %space% equ 0 if %err% neq 1 (</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 1 if %err% neq 1 (</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 2 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 3 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 4 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 5 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 6 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 7 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 8 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # #</p><p>echo # # )</p><p>if %space% equ 9 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%#</p><p>echo # # )</p><p>if %space% equ 10 if %err% neq 1 (</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo # #</p><p>echo #%lespa%X%rispa%# )</p><p>echo #######################</p><p>echo.</p><p>echo.</p><p>choice /c wasdr /n</p><p>if %errorlevel% equ 1 goto w</p><p>if %errorlevel% equ 2 goto a</p><p>if %errorlevel% equ 3 goto s</p><p>if %errorlevel% equ 4 goto d</p><p>if %errorlevel% equ 5 goto data</p><p>:w</p><p>set /a space=%space%-1</p><p>if %space% lss 0 set space=0</p><p>goto hud</p><p>:a</p><p>set lespa=!lespa:~0,-1!</p><p>set /a left=%left%-1</p><p>if %left% lss 1 set left=1 &amp;&amp; set lespa=%lespa%</p><p>set rispa=%rispa%</p><p>set /a right=%right%+1</p><p>if %right% gtr 19 set right=19 &amp;&amp; set rispa=!rispa:~0,-1!</p><p>goto hud</p><p>:s</p><p>set /a space=%space%+1</p><p>if %space% gtr 10 set space=10</p><p>goto hud</p><p>:d</p><p>set rispa=!rispa:~0,-1!</p><p>set /a right=%right%-1</p><p>if %right% lss 1 set right=1 &amp;&amp; set rispa=%rispa%</p><p>set lespa=%lespa%</p><p>set /a left=%left%+1</p><p>if %left% gtr 19 set left=19 &amp;&amp; set lespa=!lespa:~0,-1!</p><p>goto hud</p>
^^ I&nbsp;think I'm the only person who got the IF's AND's or NOT's thing. &quot;NOR&quot; does anyone other than us know what were talking about.<br />
<p>IF, AND, NOT is used pretty much same way as in standard english</p>
:o I think I got it too. &quot;IF&quot; &quot;AND&quot; &quot;NOT&quot;
I GOT IT TOO!<br>IF you thought they were batch commands AND NOT just in regular old all caps, you got it!
<p>even easier:</p><p>@echo off</p><p>@title rainbows!</p><p>:1</p><p>color</p><p>color 01</p><p>color 10</p><p>color 12</p><p>color 21</p><p>color 23</p><p>color 32</p><p>color 34</p><p>color 43 </p><p>color 45 </p><p>color 54 </p><p>color 56 </p><p>color 65 </p><p>color 67 </p><p>color 76 </p><p>color 78 </p><p>color 87 </p><p>color 89 </p><p>color 98 </p><p>color 9a </p><p>color a9 </p><p>color ab </p><p>color ba </p><p>color bc </p><p>color cb </p><p>color de </p><p>color ed </p><p>color ef </p><p>color fe</p><p>goto 1</p>
<p>faster, easier:</p><p>@echo off</p><p>:1</p><p>title rainbows!</p><p>color 01</p><p>title rainbows!</p><p>color 10</p><p>title rainbows!</p><p>color 12</p><p>title rainbows!</p><p>color 21</p><p>title rainbows!</p><p>color 23</p><p>title rainbows!</p><p>color 32</p><p>title rainbows!</p><p>color 34</p><p>title rainbows!</p><p>color 43</p><p>title rainbows!</p><p>color 45</p><p>title rainbows!</p><p>color 54</p><p>title rainbows!</p><p>color 56</p><p>title rainbows!</p><p>color 65</p><p>title rainbows!</p><p>color 67</p><p>title rainbows!</p><p>color 76</p><p>title rainbows!</p><p>color 78</p><p>title rainbows!</p><p>color 87</p><p>title rainbows!</p><p>color 89</p><p>title rainbows!</p><p>color 98</p><p>title rainbows!</p><p>color 9a</p><p>title rainbows!</p><p>color a9</p><p>title rainbows!</p><p>color ab</p><p>title rainbows!</p><p>color ba</p><p>title rainbows!</p><p>color bc</p><p>title rainbows!</p><p>color cb</p><p>title rainbows!</p><p>color de</p><p>title rainbows!</p><p>color ed</p><p>title rainbows!</p><p>color ef</p><p>title rainbows!</p><p>color fe</p><p>goto 1</p>
<p>here is a super-fast rainbow code i made:</p><p>@echo off</p><p>:1</p><p>title rainbows!</p><p>color 01</p><p>goto 2</p><p>:2</p><p>title rainbows!</p><p>color 10</p><p>goto 3</p><p>:3</p><p>title rainbows!</p><p>color 12</p><p>goto 4</p><p>:4</p><p>title rainbows!</p><p>color 21</p><p>goto 5</p><p>:5</p><p>title rainbows!</p><p>color 23</p><p>goto 6</p><p>:6</p><p>title rainbows!</p><p>color 32</p><p>goto 7</p><p>:7</p><p>title rainbows!</p><p>color 34</p><p>goto 8</p><p>:8</p><p>title rainbows!</p><p>color 43</p><p>goto 9</p><p>:9</p><p>title rainbows!</p><p>color 45</p><p>goto 10</p><p>:10</p><p>title rainbows!</p><p>color 54</p><p>goto 11</p><p>:11</p><p>title rainbows!</p><p>color 56</p><p>goto 12</p><p>:12</p><p>title rainbows!</p><p>color 65</p><p>goto 13</p><p>:13</p><p>title rainbows!</p><p>color 67</p><p>goto 14</p><p>:14</p><p>title rainbows!</p><p>color 76</p><p>goto 15</p><p>:15</p><p>title rainbows!</p><p>color 78</p><p>goto 16</p><p>:16</p><p>title rainbows!</p><p>color 87</p><p>goto 17</p><p>:17</p><p>title rainbows!</p><p>color 89</p><p>goto 18</p><p>:18</p><p>title rainbows!</p><p>color 98</p><p>goto 19</p><p>:19</p><p>title rainbows!</p><p>color 9a</p><p>goto 20</p><p>:20</p><p>title rainbows!</p><p>color a9</p><p>goto 21</p><p>:21</p><p>title rainbows!</p><p>color ab</p><p>goto 22</p><p>:22</p><p>title rainbows!</p><p>color ba</p><p>goto 23</p><p>:23</p><p>title rainbows!</p><p>color bc</p><p>goto 24</p><p>:24</p><p>title rainbows!</p><p>color cb</p><p>goto 25</p><p>:25</p><p>title rainbows!</p><p>color de</p><p>goto 26</p><p>:26</p><p>title rainbows!</p><p>color ed</p><p>goto 27</p><p>:27</p><p>title rainbows!</p><p>color ef</p><p>goto 28</p><p>:28</p><p>title rainbows!</p><p>color fe</p><p>goto 1</p>
How do i make a line so then somebody could write on batch please answer
You make it so the person using your program can write by doing this command <br>set/p input=Enter: <br>That will make it so they can enter their own words.
<p>yes, you can just write this command into notepad</p><p>set /p &quot;input=what do you want to type? &quot;</p><p>pause&gt;nul</p><p>that's a simple code for allowing user to type something in batch file</p>
ATTRIB +R Script.bat <br> <br>The above should work, but it's not hole proof and any slightly technically savvy person can undo it.
<p>this batch is very cool, but i made my own batch file to download some files from internet, its like download manager but in batch</p><p>please visit this instructables <a href="https://www.instructables.com/id/How-To-download-File-on-internet-using-batch-file/" rel="nofollow">https://www.instructables.com/id/How-To-download-Fi...</a></p><p>thank you!</p>
thanx pro neodudeman and all programmers thanx for all these instructibles
&nbsp;hey for the %random% you can change the range.. try this:<br /> <br /> set /a random=%random%/327.67<br /> <br /> now range is between 1 - 100<br />
Well, actually, there is a much easier way to do that.<br> <br> In the Command Prompt: <em>set /a number=%random% % max + min </em><br> <strong>Example:</strong> <em>set /a dice=%random% % 6 + 1</em><br> <br> In a batch script: <em>set /a number=%random% %% max + min</em><br> <strong>Example:&nbsp;</strong>set /a dice=%random% %% 6 + 1<br> <br> Oh, and setting the variable named &quot;random&quot; as %random% is not wise, as it will stop you using &quot;%random%&quot; again, as it would just be calling the pre-set variable.&nbsp;
This could have been a really great tutorial, but unfortunately all your code has been catenated onto single lines. <br> <br>Try editing it, and separating each code line with a blank line.
I made a Number guessing game batch but i cant get it to work. <br>@ECHO OFF <br>title Guess what number i am thinking of! <br>color D0 <br>if exist SAVEGAME.bat goto top <br>SET /a score1=10 <br>SET /a score2=10 <br>SET /a score3=10 <br>SET /a score4=10 <br>SET /a score5=10 <br>SET name1=aaa <br>SET name2=bbb <br>SET name3=ccc <br>SET name4=ddd <br>SET name5=eee <br>Goto mum <br>:top <br>call SAVEGAME.bat <br>:mum <br>SET /a GuessLimit=100 <br>:start <br>SET tries=11 <br>cls <br>ECHO Guess what Number I'm thinking of. (0-100) <br>ECHO Be careful, you only have limited tries! <br>ECHO Press any key to continue. <br>pause&gt;nul <br>SET /a GuessNum=0 <br>:begin <br>SET /a Answer=%RANDOM% <br>if %Answer% gtr 100 goto begin <br>:Retry <br>cls <br>SET /a tries=%tries%-1 <br>SET /a Left=11-%tries% <br>if %tries% equ 0 (goto penalty) <br>ECHO You have %tries% attempts left. <br>ECHO Please type your guess number then press enter. <br>SET /p Guess= <br>SET /a GuessNum=%GuessNum%+1 <br>IF %Guess%==overlord goto END2 <br>IF %Guess% LSS %Answer% ECHO My Number is Higher. <br>IF %Guess% GTR %Answer% ECHO My Number is Lower. <br>IF %Guess%==%Answer% GOTO END <br>ECHO Press any key to continue. <br>pause&gt;nul <br>ECHO. <br>GOTO Retry <br>:penalty <br>ECHO Sorry, you have run out of tries. <br>ECHO Better luck next time! <br>ECHO The Answer was %Answer% <br>ECHO Do you want to play again? Yes/No <br>SET /p Answer= <br>IF %Answer%==yes GOTO start <br>IF %Answer%==Yes GOTO start <br>IF %Answer%==no GOTO Exit <br>IF %Answer%==No GOTO Exit <br>:END <br>cls <br>ECHO You are Correct! <br>ECHO The Answer was %Answer% <br>ECHO It took %GuessNum% Guesses. <br>ECHO Please write your name. <br>SET /p name= <br>IF %Left% LSS %score1% GOTO sub1 <br>IF %Left% LSS %score2% GOTO Sub2 <br>IF %Left% LSS %score3% GOTO Sub3 <br>IF %Left% LSS %score4% GOTO Sub4 <br>IF %Left% LSS %score5% GOTO Sub5 <br>:overlord <br>ECHO Do you want to play again? Yes/No <br>SET /p Answer= <br>IF %Answer%==yes GOTO start <br>IF %Answer%==Yes GOTO start <br>IF %Answer%==no GOTO Exit <br>IF %Answer%==No GOTO Exit <br>:END2 <br>cls <br>ECHO You are Correct! <br>ECHO The Answer was %Answer% <br>ECHO It took %GuessNum% Guesses. <br>ECHO Do you want to play again? Yes/No <br>SET /p Answer= <br>IF %Answer%==yes GOTO start <br>IF %Answer%==Yes GOTO start <br>IF %Answer%==no GOTO Exit <br>IF %Answer%==No GOTO Exit <br>:Exit <br>exit <br>:sub1 <br>SET /a score5=%score4% <br>SET /a score4=%score3% <br>SET /a score3=%score2% <br>SET /a score2=%score1% <br>SET /a score1=%Left% <br>SET name5=%name4% <br>SET name4=%name3% <br>SET name3=%name2% <br>SET name2=%name1% <br>SET name1=%name% <br>GOTO HiscoreList <br>:Sub2 <br>SET /a score5=%score4% <br>SET /a score4=%score3% <br>SET /a score3=%score2% <br>SET /a score2=%Left% <br>SET name5=%name4% <br>SET name4=%name3% <br>SET name3=%name2% <br>SET name2=%name% <br>GOTO HiscoreList <br>:Sub3 <br>SET /a score5=%score4% <br>SET /a score4=%score3% <br>SET /a score3=%Left% <br>SET name5=%name4% <br>SET name4=%name3% <br>SET name3=%name% <br>GOTO HiscoreList <br>:Sub4 <br>SET /a score5=%score4% <br>SET /a score4=%Left% <br>SET name5=%name4% <br>SET name4=%name% <br>GOTO HiscoreList <br>:Sub5 <br>SET /a score5=%Left% <br>SET name5=%name% <br>:HiscoreList <br>ECHO. <br>ECHO HISCORES <br>ECHO 1. %name1% %score1% <br>ECHO 2. %name2% %score2% <br>ECHO 3. %name3% %score3% <br>ECHO 4. %name4% %score4% <br>ECHO 5. %name5% %score5% <br>if exist SAVEGAME.bat del SAVEGAME.bat <br>ECHO @echo off&gt;SAVEGAME.bat <br>ECHO set name1=%name1%&gt;&gt;SAVEGAME.bat <br>ECHO set name2=%name2%&gt;&gt;SAVEGAME.bat <br>ECHO set name3=%name3%&gt;&gt;SAVEGAME.bat <br>ECHO set name4=%name4%&gt;&gt;SAVEGAME.bat <br>ECHO set name5=%name5%&gt;&gt;SAVEGAME.bat <br>ECHO set score1=%score1%&gt;&gt;SAVEGAME.bat <br>ECHO set score2=%score2%&gt;&gt;SAVEGAME.bat <br>ECHO set score3=%score3%&gt;&gt;SAVEGAME.bat <br>ECHO set score4=%score4%&gt;&gt;SAVEGAME.bat <br>ECHO set score5=%score5%&gt;&gt;SAVEGAME.bat <br>pause&gt;nul <br>GOTO overlord
i changed your code for the number guessing game<br /> i added a simple cheat and made the game a little easier:<br /> the number doesn't go higher than 100<br /> <br /> @ECHO OFF<br /> :start<br /> cls<br /> SET /a GuessNum=0<br /> :begin<br /> SET /a Answer=%RANDOM%<br /> if %Answer% gtr 100 goto begin<br /> :Retry<br /> ECHO Guess what Number I'm thinking of.<br /> SET /p Guess=<br /> SET /a GuessNum=%GuessNum%+1<br /> IF %Guess%==cheat goto END<br /> IF %Guess% LSS %Answer% ECHO My Number is Higher.<br /> IF %Guess% GTR %Answer% ECHO My Number is Lower.<br /> IF %Guess%==%Answer% GOTO END<br /> ECHO.<br /> pause&gt;nul<br /> cls<br /> GOTO Retry<br /> :END<br /> cls<br /> ECHO You are Correct! <br /> echo The Answer was %Answer%<br /> ECHO It took %GuessNum% Guesses.<br /> ECHO.<br /> pause<br /> goto start<br />
I added on to yours. <br><br>@ECHO OFF<br>title Guess the Number!<br>color 0b<br>SET /a GuessLimit=15<br>:start<br>cls<br>ECHO Guess what Number I'm thinking of. (0-100)<br>SET /a GuessNum=0<br>:begin<br>SET /a Answer=%RANDOM%<br>if %Answer% gtr 100 goto begin<br>:Retry<br>SET /p Guess=<br>SET /a GuessNum=%GuessNum%+1<br>IF %Guess%==cheat goto END<br>IF %Guess% LSS %Answer% ECHO My Number is Higher.<br>IF %Guess% GTR %Answer% ECHO My Number is Lower.<br>IF %Guess%==%Answer% GOTO END<br>IF %GuessNum% GTR %GuessLimit% (<br>start http://www.google.com/<br>)<br>ECHO.<br>GOTO Retry<br>:END<br>cls<br>ECHO You are Correct!<br>echo The Answer was %Answer%<br>ECHO It took %GuessNum% Guesses.<br>ECHO.<br>echo Press any key to play again. :)<br>pause&gt;nul<br>goto start<br><br>You can change the google.com to whatever you want so that if they dont guess in 15 tries they go to the designated website &gt;:D
@ECHO OFF color 29 :hmm? Echo Chose the right number or get PWNED! echo. echo. set /p lol=Choose or ELSE!!!))) if %lol%== 8 good... if not %lol%== 8 goto pwn :pwn start http://www.youtube.com/watch?v=oHg5SJYRHA0&amp;feature=related/ exit :good... echo You got lucky... pause &gt;nul
cd.. <br>cd.. <br>cd.. <br>cd.. <br>cd.. <br>dir /s <br>
I mine as well should add my variation.I got ideas from various people, but I mainly just edited and added in some new echo's and added some extra info.<br> <br> <br> <br> @ECHO OFF<br> title Command Prompt - Made by NetworkNinja Editted by Mikeyy<br> color 20<br> echo Calculator V1.3<br> echo Made by NetworkNinja echo Editted by Mikeyy<br> echo ---------------------<br> echo LEARN:<br> echo * = Multiply<br> echo / = Divide<br> echo + = Addition<br> echo - = Subtracting<br> echo ---------------------<br> :blah<br> ECHO.<br> SET /p UDefine=<br> SET /a UDefine=<br> %UDefine%<br> ECHO =<br> ECHO<br> %UDefine%<br> ECHO.<br> PAUSE<br> ECHO.<br> echo THANK YOU FOR USING OUR CALCULATOR!<br> ECHO -------------------------------------------------------------------------------- ECHO.<br> goto blah
You could do this: @echo off color 0a :lol echo %random%%random%%random%%random%%random%%random%%random%%random%%random% goto lol
@ECHO OFF color 29 :hmm? Echo Chose the right number or get PWNED! echo. echo. set /p lol=Choose or ELSE!!!))) if %lol%== 8 good... if not %lol%== 8 goto pwn :pwn start http://www.youtube.com/watch?v=oHg5SJYRHA0&amp;feature=related/ exit :good... echo You got lucky... pause &gt;nul
@echo off<br/>color 29<br/>Echo Chose the right number or get PWNED!<br/>SET /p doom1=<br/>SET boom2=8<br/>IF %doom1%NEQ%boom2% (<br/>start http:/www.epicwinrar.com/<br/>)<br/>I tried this batch out but it didn't work. What did I do wrong?<br/>
@ECHO OFF<br/>color 29<br/>Echo Chose the right number or get PWNED!<br/>SET /p doom1=<br/>SET boom2=8<br/>IF %doom1% NEQ %boom2% (<br/>start http:/www.wikipedia.org/<br/>)<br/><br/>You didn't put spaces between %doom1%NEQ%boom2%<br/><br/>It should be %doom1% (SPACE) NEQ (SPACE) %boom2%<br/>
@ECHO OFF color 29 :hmm? Echo Chose the right number or get PWNED! echo. echo. set /p lol=Choose or ELSE!!!))) if %lol%== 8 good... if not %lol%== 8 goto pwn :pwn start http://www.youtube.com/watch?v=oHg5SJYRHA0&amp;feature=related/ exit :good... echo You got lucky... pause &gt;nul
Thanks. Time to own my parents...
@ECHO OFF color 29 :hmm? Echo Chose the right number or get PWNED! echo. echo. set /p lol=Choose or ELSE!!!))) if %lol%== 8 good... if not %lol%== 8 goto pwn :pwn start http://www.youtube.com/watch?v=oHg5SJYRHA0&amp;feature=related/ exit :good... echo You got lucky... pause &gt;nul
EKKKK!!! Rick roll!
How do you read a file using Batch?
&nbsp;It's really complex and long, don't bother unless you really need to.<br /> <br /> Unless you're just trying to read one line, in which case:<br /> <br /> set var=&lt;&quot;file&quot;<br /> echo %var%<br /> <br /> But that only works in XP...<br />
&nbsp;No, I mean, read a file as in a configuration file.
::type Configure.Extension | find /i &quot;Variable&quot; &gt; OutputFile.Extension ::set /p SetupVariable= &lt; OutputFile.Extension ::set ProgramVariable=%SetupVariable:~X,Y% ::X and Y being the first and last character number eg. Variable=10 is x=10, y=11 ::PM me if you still need help (had to make this brief for some reason)
Just a question but do you know how the %random% variable works? I would think it'd be a script that is on your computer and if so then you could possibly create another script with your own range. Just posting this. This is really cool though.
I'm honestly not sure how the %random% works. Here's a little code that will specify the range for you:<br/><pre>@ECHO OFFSet /a num=%random%ECHO Input MaximumSet /p high=ECHO Input MinimumSet /p low=ECHO.ECHO The Number Is::RetryIf %num% LEQ %high% (If %num% GEQ %low% ECHO %num%) ELSE (Set /a num=%random%GOTO Retry)Pause</pre>What it does is it keeps randomizing a variable until it fits the parameters you set.<br/>
Hey how can I implement this code into the guessing game. I'm trying to fiqure it out. ...maybe if instead showing the number I can have it run from the :Retry label...
Nevermind I figured it out.<br/><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline">_</span><br/>@ECHO OFF<br/>Cls<br/>Set /a Answer=%random%<br/>ECHO Input Maximum<br/>Set /p high=<br/>ECHO Input Minimum<br/>Set /p low=<br/>ECHO.<br/>ECHO.<br/>:Retry<br/>If %Answer% LEQ %high% (<br/>If %Answer% GEQ %low% ECHO Now guess what Number I'm thinking of<br/>) ELSE (<br/>Set /a Answer=%random%<br/>GOTO Retry<br/>)<br/>Pause<br/><br/>:Reset<br/>SET /p Guess=<br/>IF %Guess% LSS %Answer% ECHO My Number is Higher.<br/>IF %Guess% GTR %Answer% ECHO My Number is Lower.<br/>IF %Guess%==%Answer% GOTO END<br/>ECHO.<br/>SET /a GuessNum=%GuessNum%+1<br/>GOTO Reset<br/>:END<br/>ECHO You are Correct! The Answer was %Answer%<br/>ECHO It took %GuessNum% Guesses.<br/>ECHO.<br/>PAUSE<br/><br/>ECHO.<br/>ECHO.<br/>ECHO.<br/>ECHO.<br/>ECHO.<br/>SET Yes=1<br/>SET No=2<br/>Echo.Play Again? 1 for Yes or 2 for No<br/>Set /p ANS=<br/>If %ANS% EQU %Yes% (CALL GUESSGAME.BAT<br/>) ELSE (<br/>Echo.Ok just go pass the Pause.<br/>)<br/>Pause<br/><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline"></span><span class="underline">_</span><br/><br/>Just make sure that on the Call command (5 up from the bottom) that it calls the name of your game.<br/><br/>Oh, another question if you make the game into an .exe application or even .com how do you recall the game if you want to play again?<br/>
I don't understand what you mean by recall.<br/><br/>You mean like, save game?<br/><br/>I'm not sure, and I can't test now, but maybe if you did something like save your variables into a .bat, and then use the CALL command to recall those variables.<br/><br/>I.E.<br/><pre>ECHO SET /a Guessnum=%Guessnum&gt;SaveGame.batECHO SET /a Answer=%Answer%&gt;&gt;SaveGame.bat</pre>Then, you use:<br/><pre>CALL SaveGame.bat</pre>and it should give you those numbers back.<br/>
I wasn't thinking of that. That's a good idea though. and it might work though you would have to give them diff variable names in there or they would over write the default so you would have a higher number. But what I meant was restarting the same program with out closing out and then starting it again. Like if you could get the program to ask if you wanted to play again. I did it using the batch file but i'm not sure if it would work with an exe file.
Ohhhh. I think I see. I think that the .exe file would work just like the .bat file. Just so long as you're compiling it with the bat2exe program that I supplied in <a rel="nofollow" href="https://www.instructables.com/id/EYPDTDC76IES176IXE/">Slightly More Advanced Basic Batch</a><br/><br/>(I just realized how long that name is. lol.)<br/>

About This Instructable

104,132views

49favorites

License:

More by Neodudeman:NES Controller Cellphone Advanced Batch Basics of Batch Files 
Add instructable to: