Suppose I have a script (
.vbs, for example) that is stored in a file. How does the code in the file get converted into machine instructions? What is between the vbs file and the processor?
"Scripting" languages are typically interpreted, not compiled. That means that there will be a program called the "interpreter" for that language, which reads the programs written in the language, and executes them. Interpreted programs runs slow as compared to compiled ones due to the difference in execution process. You can start reading about interpreters from the Wikepedia entry:
A compiler, on the other hand, translates a program in the programming language into machine language, and lets the CPU execute the machine language program. The only reason for compiling instead of interpreting is for speed. The CPU can typically execute the translated machine language program about 10-100 times faster than any interpreter. The reason is that the CPU is implemented in hardware. Otherwise, there is nothing that a CPU can do that a program can't.
Scripting languages are usually used for expressing high-level operations. For such things, the speed advantage of the CPU becomes much less significant. So, interpreting them is competitive to compiling them.
That depends on a lot of factors. If it is a pure interpreter (like most shells), the interpreter reads each line/instruction, analyzes it, and executes it. If it is a pure compiler, the program (or a part of it) is read in, analyzed, and then the machine language is written out to run later. Many programming languages are implemented by compiling into a fake machine language (like Java's Virtual Machine; Python and Perl does so too, but not so overtly), and the fake machine language is then interpreted.
This is a vast area, to get an idea of how a real compiler works a good introduction is Fraser and Hanson's "A Retargetable C Compiler: Design and Implementation", the full code of the compiler is available.