Need help with batch file...

Archived from groups: microsoft.public.windowsxp.security_admin (More info?)

I am attempting to write a batch file (to be executed at startup) to enable
or disable a given user account based on the current time. My efforts thus
far have resulted in this:

if %time% geq 15:30 if %time% lss 10:00 net user username /active:yes
if %time% geq 10:00 if %time% lss 11:55 net user username /active:no
if %time% geq 11:55 if %time lss 12:35 net user username /active:yes
if %time% geq 12:35 if %time% lss 15:30 net user username /active:no

If the time is from 3:30 PM to before 10:00 AM, or from 11:55 AM to before
12:35 PM, the account should be enabled. If the time is from 9:55 AM to
before 11:55 AM, or from 12:35 PM to before 3:30 PM, the account should be
disabled. In conjunction with a few sheduled tasks, this batch file would
enable the given account to be unavailable to users except at the desired
times, without the restrictions of the '/times' option for the 'net users'
command.
The only problem, naturally, is that the batch file doesn't work. The second
line returns 'net was unexpected at this time', and the last line doesn't
seem to run at all. What am I doing incorrectly?
3 answers Last reply
More about need batch file
  1. Archived from groups: microsoft.public.windowsxp.security_admin (More info?)

    try
    %username%

    more info can be retrieved at command line:
    net help user
    help if

    Better yet, use the "Logon Hours" option to restrict access if you are in an
    AD environment (account properties > Account > Logon Hours).

    Do let us know if this helps. Thanks!


    "radar64" wrote:

    > I am attempting to write a batch file (to be executed at startup) to enable
    > or disable a given user account based on the current time. My efforts thus
    > far have resulted in this:
    >
    > if %time% geq 15:30 if %time% lss 10:00 net user username /active:yes
    > if %time% geq 10:00 if %time% lss 11:55 net user username /active:no
    > if %time% geq 11:55 if %time lss 12:35 net user username /active:yes
    > if %time% geq 12:35 if %time% lss 15:30 net user username /active:no
    >
    > If the time is from 3:30 PM to before 10:00 AM, or from 11:55 AM to before
    > 12:35 PM, the account should be enabled. If the time is from 9:55 AM to
    > before 11:55 AM, or from 12:35 PM to before 3:30 PM, the account should be
    > disabled. In conjunction with a few sheduled tasks, this batch file would
    > enable the given account to be unavailable to users except at the desired
    > times, without the restrictions of the '/times' option for the 'net users'
    > command.
    > The only problem, naturally, is that the batch file doesn't work. The second
    > line returns 'net was unexpected at this time', and the last line doesn't
    > seem to run at all. What am I doing incorrectly?
  2. Archived from groups: microsoft.public.windowsxp.security_admin (More info?)

    I simply put 'username' as an example. I was not intending to put a variable
    there... I think.
    I am something of a novice at writing batch files with conditional
    processing. Though I have used the help command for both if and net, the
    voluminous information the documentation for the if command contains gives no
    indication or what I must be doing wrong.
    And, unfortunately, we do not have Active Directory.
  3. Archived from groups: microsoft.public.windowsxp.security_admin (More info?)

    radar64 wrote:

    > I simply put 'username' as an example. I was not intending to put a variable
    > there... I think.
    > I am something of a novice at writing batch files with conditional
    > processing. Though I have used the help command for both if and net, the
    > voluminous information the documentation for the if command contains gives no
    > indication or what I must be doing wrong.
    > And, unfortunately, we do not have Active Directory.
    Hi

    You might want to post your question to the newsgroup
    microsoft.public.win2000.cmdprompt.admin


    --
    torgeir, Microsoft MVP Scripting and WMI, Porsgrunn Norway
    Administration scripting examples and an ONLINE version of
    the 1328 page Scripting Guide:
    http://www.microsoft.com/technet/scriptcenter/default.mspx
Ask a new question

Read More

Security Microsoft Windows XP