mybatchfile.bat *.txtThe above would give you a variable of %1 which would now contain *.txt. Any further parameters you accept would have %2, %3 and so on. The only problem with accepting parameters like this is that the user would have to be comfortable typing a command on the command line, obviously that example is quite simple but you would probably not want your users to have to visit the command line unless absolutely necessary.
Another way would be to have the batch file ask the user for input and allow them to choose from a list of choices. To do this you would use the 'choice' command within your batch file. By default they would get an option of 'Y' or 'N', e.g.
[Y,N]?You can configure the available choices to be whatever you want by using the command's switches. When the user makes a choice, the command sets an %errorlevel% value which you can use ('Y' would return errorlevel 1 and 'N' would return errorlevel 2). The only issue is that this command is not available on Windows 2000 or below.
The third way would to allow the user to provide their own input, for example if you can't provide them with a list for whatever reason. To do this, use the 'set' command with the /p switch as follows:
set /p NAME=Please enter your name:The above command would display 'Please enter your name:' and then populate the %NAME% variable with whatever the user typed in.