Je travaille avec DynamoDB d'Amazon et je n'arrive pas à comprendre comment tuer le processus de manière fiable par nom ou PID de manière programmable.
Je dois le redémarrer car je retiens toutes les données en mémoire et je peux tout supprimer en redémarrant simplement le processus. Le problème est que je ne sais pas comment le tuer aussi facilement que de le démarrer.
ps -ax | grep "Dynamo"
renvoie 19355 ttys001 0:28.31 /usr/bin/java -Djava.library.path=./DynamoDBLocal_lib -jar /Users/user/workspace/lib/DynamoDBLocal.jar -sharedDb -port 8000 -inMemory
Mais quand j'essaie killall DynamoDBLocal.jar
je reçois Aucun processus correspondant appartenant à vous n'a été trouvé
et le PID change à chaque fois qu'il est démarré.
Comment puis-je trouver le PID de manière programmable pour l'envoyer à kill -9 PID
ou correctement utiliser killall
par nom?
EDIT: Terminé! Voici mon travail à partager avec les autres:
alias start_dynamo='java -Djava.library.path=./DynamoDBLocal_lib -jar /Users/user/workspace/lib/DynamoDBLocal.jar -sharedDb -port 8000 -inMemory &'
alias end_dynamo="kill `ps -ax | grep Dynamo | grep -v grep | awk '{print $1}'`"
alias restart_dynamo='end_dynamo; start_dynamo'