Command line task management for Windows (task list and kill)

Command line task management for Windows (kill and tasklist)

If you need to kill a task on Windows, on .bat script or because the task manager won’t let you manage it, here is what you can do:
Si vous avez besoin de tuer un processus sous Windows, dans un script .bat ou parce que le gestionnaire des tâches ne vous laisse pas le faire, voici ce que vous pouvez faire :

First use tasklist command to get information about the task you want to kill.
D’abord utilisez la commande tasklist pour avoir des informations sur le processus à tuer.

To get information on a process named “ADA_ADMIN”:
Pour avoir des informations sur un processus nommé “ADA_ADMIN”:

C:\>TASKLIST /FI "IMAGENAME eq ADA*"
 
Nom de l'image                 PID Nom de la sessio Numéro de s Utilisation
========================= ======== ================ =========== ============
ADA_ADMIN.exe                 2164 Console                    1    31 552 Ko

/FI apply a filter on a column
/FI pour filtre sur une colonne
(Check help for more information)

Then use taskkill to kill the task.
Ensuite utilisez taskkill pour tuer le processus.

Three different ways based on tasklist’s information:
Voici trois différentes façons basées sur les informations données par tasklist :

C:\>TASKKILL /F /FI "IMAGENAME eq ADA*" /T
C:\>TASKKILL /F /PID 2164 /T
C:\>TASKKILL /F /IM ADA_ADMIN.exe /T

/F force process termination
/F pour forcer le processus à se terminer.
/T kill also children processes.
/T pour terminer également les processus enfants.
(check help for more information)

For Windows 2000 you can use “tlist.exe” (included in Windows NT Server Resource Kit) instead of tasklist.
Pour Windows 2000 vous pouvez utiliser “tlist.exe” (inclus dans Windows NT Server Resource Kit) à la place de tasklist.

For Windows XP you can download tasklist.exe (same usage as above) and kill.exe (for Windows 2000 and XP).
Pour Windows XP vous pouvez télécharger tasklist.exe (même utilisation que ci-dessus) et kill.exe (pour Windows XP et 2000).

Here is the download link.
Voici le lien de téléchargement.
(md5sum :aeac3f997ce9f8ec89f966171aecd952)

Managing license with lmf on Tru64

Recently I had to retrieve all the Tru64 licenses (OSF-BASE, OSF_SRV, OSF-USR…) on my old bunch of Apha Servers, in order to save them (in case of need).

Récemment j’ai du récupérer toutes les licences Tru64 (OSF-BASE, OSF_SRV, OSF-USR…) sur mes vieux serveurs Alpha, pour les sauvegarder (en cas de besoin).

This is how you manage Tru64 licenses:

Voici comment administrer les licences Tru64 :

# lmf list
Product                   Status                     Users: Total      Active
OSF-SVR                   active                            unlimited
OSF-BASE                  active                            unlimited
OSF-USR                   active                            4          0

“lmf list full” to get the full information, for instance :

“lmf list full” pour avoir la liste complète des informations sur les licences, par ex :

Product Name: OSF-BASE
Producer: DEC
Issuer: DEC
Authorization Number: XXX-XX-2004MAY18-XXX
Number of units: XX
Version:
Product Release Date:
Key Termination Date:
Availability Table Code: A
Activity Table Code:
Key Options: MOD_UNITS, ALPHA
Product Token:
Hardware-Id:
License status: active
Cancellation Date:
Revision Number: 0
Comment:
Cache Total Units: XX
Activity Charge: 0

To save your licenses on files you need “Product Name”, “Producer” and “Authorization Number” fields.
Then you have to run :

Pour sauvegarder vos licences dans des fichiers il faut les champs “Product Name”, “Producer” and “Authorization Number” et lancer :

lmf issue /tmp/license_file <Product Name> <Producer> <Authorization number>

The license is now in the file. If you run “lmf list” one license will be missing.
So you have to register again the license with the command:

La licence est maintenant contenue dans le fichier. Si vous lancez « lmf list », une des licences est manquante.

Il faut donc enregistrer à nouveau la licence avec la commande :

lmfregister - < /tmp/license_file

and enable the license :

et activer la licence :

lmf reset

This is a quick shell script I wrote in order to save some time.

Voici un shell script que j’ai rapidement écrit pour gagner du temps.

The 3 needed fields for all licenses are extracted in a variable. I use only the first 3 fields of the variable corresponding to a license. With those 3 fields I extract the license in a file (/tmp directory).

I’m doing the extraction until there are no more licenses on the server, then I use the files to register again the licenses and enable them.

J’extrais les 3 champs nécessaires de chaque licence dans une seule variable et je traite les 3 premiers champs qui correspondent à une licence.  Grace aux 3 champs j’extrais la licence dans un fichier dans le répertoire /tmp.

Cette opération est effectuée jusqu’à ce qu’il n’y ait plus de licences sur le serveur. Ensuite j’utilise les fichiers pour remettre les licences et les réactiver.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/ksh
#Initiate the loop
A="-"
while [ "$A" != "" ]
do
# get license list in one line
A=$(lmf list full |grep -E "Product Name|Producer|Authorization Number" |awk -F":" '{print $2}')
# if no license is found it's the end
[[ "$A" = "" ]] &amp;&amp; break
PRODUCT=$(echo $A |awk '{print $1}')
PRODUCER=$(echo $A |awk '{print $2}')
AUTH=$(echo $A |awk '{print $3}')
HST=$(hostname)
echo "License file is /tmp/${HST}_${PRODUCT}_${AUTH}"
#transfert the lisence to the file
lmf issue /tmp/${HST}_${PRODUCT}_${AUTH} ${PRODUCT} ${PRODUCER} ${AUTH}
done
#now the licenses are on files
#then you have to push again the licenses to the system
cd /tmp/
ls -1 `hostname`*|while read LINE
do
echo "-> register of license $LINE"
lmf register - < $LINE
done
#enable the licenses
lmf reset
#end