Come individuare, uccidere e riavviare a livello di codice un processo DynamoDB locale

2

Sto lavorando con Amazon DynamoDB e non riesco a capire come uccidere il processo in modo programmatico per nome o PID.

Ho bisogno di riavviarlo poiché sto tenendo tutti i dati in memoria e posso cancellare l'intera cosa semplicemente riavviando il processo. Il problema è che non riesco a capire come ucciderlo così facilmente come avviarlo.

ps -ax | grep "Dynamo" restituisce 19355 ttys001 0:28.31 /usr/bin/java -Djava.library.path=./DynamoDBLocal_lib -jar /Users/user/workspace/lib/DynamoDBLocal.jar -sharedDb -port 8000 -inMemory

Ma quando provo killall DynamoDBLocal.jar ricevo No matching processes belonging to you were found e il PID cambia ogni volta che viene avviato.

Come posso trovare a livello di codice il PID da inviare a kill -9 PID o correttamente killall per nome?

EDIT: Finito! Ecco il mio lavoro da condividere con gli altri:

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'
    
posta anon58192932 22.03.2017 - 19:35
fonte

1 risposta

2
kill 'ps -ax |grep Dynamo |awk '{print $1}'' 

dovrebbe farlo nota, questo ucciderà qualsiasi proc corrispondente a Dynamo

    
risposta data 22.03.2017 - 21:24
fonte

Leggi altre domande sui tag