• Announcements

    • xper

      MSFN Sponsorship and AdBlockers!   07/10/2016

      Dear members, MSFN is made available via subscriptions, donations and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, become a site sponsor and ads will be disabled automatically and by subscribing you get other sponsor benefits.
Caml Light

TASKLIST

9 posts in this topic

Hi guys, with tasklist command i need to save as txt all running processes, so i've created a batch file with:

TASKLIST > processes.txt

At this point i would need to save as txt only the image names, without PID, session name and so on... simply a txt file in this format:

csrss.exe
svchost.exe
taskmgr.exe
wininit.exe
winlogon.exe
...

Is it possible to do it for you? Thank you in advance.

Cheers :)

0

Share this post


Link to post
Share on other sites
FOR /F "skip=3" %%I IN ('tasklist.exe') DO ECHO>>processes.txt %%I

0

Share this post


Link to post
Share on other sites

thank you but the processes.txt file only contains this:

ECHO active.
ECHO active.
ECHO active.
ECHO active.
ECHO active.
...

0

Share this post


Link to post
Share on other sites

It works fine here so it must be a different version of tasklist.exe to have different output than mine. You didn't mention your OS though :whistle:

Could you show an example how your tasklist.exe output looks like?

Here it's sth like this:

Image Name                   PID Session Name     Session#    Mem Usage
========================= ====== ================ ======== ============
System Idle Process 0 0 36 K
System 8 0 28 K
smss.exe 240 0 36 K

Edited by tomasz86
0

Share this post


Link to post
Share on other sites

How would this do for your needs:

@ECHO OFF
>PROCESSES.TXT TYPE NUL
FOR /F "DELIMS=," %%# IN ('TASKLIST /FI "STATUS eq RUNNING" /FO "CSV" /NH') DO (
>>PROCESSES.TXT ECHO=%%~#)

0

Share this post


Link to post
Share on other sites

Yzöwl your batch works perfectly! This time i only need to modifying it to save as text all processes, so i've delete this:

/FI "STATUS eq RUNNING"

@ECHO OFF
>processes.log TYPE NUL
FOR /F "DELIMS=," %%# IN ('TASKLIST /FO "CSV" /NH') DO (
>>processes.log ECHO=%%~#)

The problem now is that there are many duplicates, for ex. svchost.exe or csrss.exe are reported many times in the text file. Should you have an idea to list all processes one time only?

0

Share this post


Link to post
Share on other sites

The following should be sufficient although it does seem a little pointless not knowing how many separate instances of a process are running.

@ECHO OFF
>processes.log TYPE NUL
FOR /F "DELIMS=," %%# IN ('TASKLIST /FO "CSV" /NH') DO (
>NUL FINDSTR/IBE "%%~#" processes.log||>>processes.log ECHO=%%~#)

Please note that cmd.exe, conhost.exe and tasklist.exe may be included only as a result of your query, but since there is no way of knowing I'd be inclined not to remove them from the logged results.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.