5. Multiple users and Non-interactive sessions

5.1. Can I use dosemu on a multi-user system?

Yes, you can configure dosemu on a per-user basis. See README.txt for details.

5.2. How can I run dos commands non-interactively?

You can do any of the following:

  1. use the keystroke configuration option and the -input command line option as described in the manual page to specify keystrokes on the command line that will act exactly as if you had typed them within dosemu.

  2. Use the dosemu [-E] dos-command and unix -e as your last line in autoexec.bat. The specified dos command is executed. If '-E' is not given, then DOSEMU exits after running the command.

Here are some additional alternatives:

Daniel T. Schwager reported (94/7/2) that:

You can use different dosemu.conf files (and different hd-boot-images with different autoexec.bat's) and call dosemu like:

    $ dosemu -f my_quicken_q_exe_dosemu.conf

---------------------

Dietmar Braun reported (94/7/4) that:

This is no problem at all when you use the redirector of dosemu. It is possible to redirect a drive letter to a linux path given by an environment variable.

So I have a shell script named "DOS" which does something like:

    mkdir /tmp/dos.$$
    DOSTMP=/tmp/dos.$$; export DOSTMP

and then a little trick to get "echo $* > $DOSTMP/startup.bat" really working (actually a small C Program which turns `/' in `\' and terminates lines correctly for messy dos with cr/lf pairs and adds ^Z at the end of the file), creates startup files, links and so on in this directory, and then starts dosemu. Within "autoexec.bat" drive c: is redirected from hdimage to this tmp-directory, which has links for $HOME and $PWD.

So if I want to see my filenames shortened to 8.3 I can type "DOS dir" and I get my current directory listing. So I have full DOS multi user (I don't have any DOS partition and redirecting to Linux preserves user permissions) and multi tasking. (dosemu sessions are completely independent). I did this once to be able to use a dos driver for my printer. My printcap df is actually a DOS program. So you can even make DOS executables act as lpr filters.