Using awk to kill a process


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Using awk to kill a process
# 1  
Old 10-01-2015
Using awk to kill a process

Hi Guys
I am running a small script to find a process id , ask user if they want to kill the process and then action it Yes or no

Here is what i have

Code:
#/bin/bash


ps -l | grep -i $1 | awk '{print "Process id of '$1' is "$4""}' 

echo "Do you want to kill this process (Y/N)"
read action

if [ $action = "Y" ]
	then
	kill  $4
		elif [ $action = "N" ]
		then
		echo "Ok, thanks for using the program"
		exit 0
fi

Having small problem with the $4 as outisde of the awk command, the $4 means nothing. Is there any way to can take $4 into the if else command to kill it ?

usage for example is ./script gedit
It gives me back the process id of gedit ok but its after that i need a little help
# 2  
Old 10-01-2015
Why do you use awk for that?
# 3  
Old 10-01-2015
using awk as i just want to get familiar with the command
# 4  
Old 10-01-2015
Try
Code:
read PID CMD <<< $(ps -eopid,command|grep [g]edit)

# 5  
Old 10-01-2015
I want to use the awk command like in my above script
# 6  
Old 10-01-2015
Hello

Allthough awk's first output column ($1) matches what you have passed $1, it is NOT the same.
One is a shell variable, and one is a column ID.

You can pass a variable to AWK, with awk -v VAR=value ..., however, this is only to pass a shell variable into awk.
You might catch the awk output into a shell variable, and compare that for further shell actions.

You do need to catch the proccess id (pid) of the passed argument ($1) into a new variable, and 'kill that'..
Code:
value=$(ps -l | grep -i $1 | awk '{print $4}')

hth
This User Gave Thanks to sea For This Post:
# 7  
Old 10-01-2015
You do need to catch the proccess id (pid) of the passed argument ($1) into a new variable, and 'kill that'..

How can i catch the process id of the passed arguement ? I just need to awk for the print command to print the pid of the arguement

---------- Post updated at 07:39 AM ---------- Previous update was at 07:15 AM ----------

thanks
got this working with

Code:
#/bin/bash

ps -l | grep -i $1 | awk '{print "Process id of '$1' is "$4""}' > output.txt

output="output.txt"


pid=$(cat "$output" | cut -d ' ' -f6)


echo "Do you want to kill this process (Y/N)"
read action

if [ $action = "Y" ]
	then
	kill  $pid
		elif [ $action = "N" ]
		then
		echo "Ok, thanks for using the program"
		exit 0
fi

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Kill an specific process ID using the KILL and GREP commands

Good afternoon I need to KILL a process in a single command sentence, for example: kill -9 `ps -aef | grep 'CAL255.4ge' | grep -v grep | awk '{print $2}'` That sentence Kills the process ID corresponding to the program CAL255.4ge. However it is possible that the same program... (6 Replies)
Discussion started by: enriquegm82
6 Replies

2. Solaris

Cannot kill a process with kill -9

Hello everyone, I have a process that I want to kill. I have tried kill-9 PID but it doesn't work. I have tried preap PID but it doesn't work too. The parent of my process is the process whose PID is 1, so I can't kill it. My OS is a Solaris 9. Can anyone help me understand what's going... (3 Replies)
Discussion started by: adilyos
3 Replies

3. UNIX for Dummies Questions & Answers

Script to start background process and then kill process

What I need to learn is how to use a script that launches background processes, and then kills those processes as needed. The script successfully launches the script. But how do I check to see if the job exists before I kill it? I know my problem is mostly failure to understand parameter... (4 Replies)
Discussion started by: holocene
4 Replies

4. Shell Programming and Scripting

grep the process id and kill all the filtered process

Hi I want to write a shell script which can find the process id's of all the process and kill them eg: ps ax | grep rv_ 3015 ? S 0:00 /home/vivek/Desktop/rv_server 3020 ? S 0:00 /home/vivek/Desktop/rv_gps 3022 ? S 0:00 /home/vivek/Desktop/rv_show ... (7 Replies)
Discussion started by: vivek_naragund
7 Replies

5. Shell Programming and Scripting

Shell Script to Kill Process(number of process) Unix/Solaris

Hi Experts, we do have a shell script for Unix Solaris, which will kill all the process manullay, it used to work in my previous env, but now it is throwing this error.. could some one please help me to resolve it This is how we execute the script (and this is the requirement) ... (2 Replies)
Discussion started by: jonnyvic
2 Replies

6. Linux

Kill a process without using kill command

I want to Kill a process without using kill command as i don't have privileges to kill the process. I know the pid and i am using Linux 2.6.9 OS. (6 Replies)
Discussion started by: sudhamacs
6 Replies

7. Shell Programming and Scripting

Kill a process without using kill command

Sorry, posted the question in other forum. (0 Replies)
Discussion started by: sudhamacs
0 Replies

8. Programming

kill(0,-9) don't kill the process

Hi all i have simple c program , when i wish to kill the app im using kill(0,-9) , but it seams this command don't do any thing and the program. just ignore it . what im doing wrong here ? im using HP-UX ia64 Thanks (9 Replies)
Discussion started by: umen
9 Replies

9. Shell Programming and Scripting

how to start a process and make it sleep for 5 mins and then kill that process

how to start a process and make it sleep for 5 mins and then kill that process (6 Replies)
Discussion started by: shrao
6 Replies

10. UNIX for Advanced & Expert Users

When kill doesnt work, how to kill a process ?

Hi All, I am unable to kill a process using kill command. I am using HP-UX system. I have tried with kill -9 and i have root privilages. How can i terminate this daemon ? ? ? Regards, Vijay Hegde (3 Replies)
Discussion started by: VijayHegde
3 Replies
Login or Register to Ask a Question