Word count of lines ending with certain word


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Word count of lines ending with certain word
# 1  
Old 08-29-2009
Word count of lines ending with certain word

Hi all, I am trying to write a command that can help me count the number of lines in the /etc/passwd file ending in bash.

I have read through other threads but am yet to find one indicating how to locate a specifc word at the end of a line. I know i will need to use the wc command but when i attempt to combine this with grep it seems to do nothing at all. Below is the command i am entering:

cat /etc/passwd | wc | grep bash

If anyone can help me correct this and indicate where i am going wrong i'd be most grateful.
# 2  
Old 08-29-2009
try this:

cat /etc/passwd | grep "bash" | wc

or

cat /etc/passwd | grep "bash" | wc -l

if you just want the count.
# 3  
Old 08-29-2009
Thanks for that but i have one more question if within /etc/passwd i wanted to write a command to replace each instance of bin/bash from every line with bin/csh without manually editing the file how would i do that?
# 4  
Old 08-29-2009
use the stream editor, sed.

sed -i 's/bin\/bash/bin\/csh/g' /etc/passwd

the back slashes are escape characters for the front slashes. The g reperesents 'global,' and will change every instance, not just the first occurance on each line.

Hopefully this works.
# 5  
Old 08-29-2009
Quote:
Originally Posted by warlock129
...
if within /etc/passwd i wanted to write a command to replace each instance of bin/bash from every line with bin/csh without manually editing the file how would i do that?
Code:
$ 
$ cat f1
The first line.
This line has /bin/bash in it.
The third line.
This line has /bin/bash in it, twice => /bin/bash.
The fifth line.
And /bin/bash here and here /bin/bash and here /bin/bash
$ 
$ perl -pi.backup -e 's#/bin/bash#/bin/csh#g' f1
$ 
$ cat f1
The first line.
This line has /bin/csh in it.
The third line.
This line has /bin/csh in it, twice => /bin/csh.
The fifth line.
And /bin/csh here and here /bin/csh and here /bin/csh
$ 
$ cat f1.backup
The first line.
This line has /bin/bash in it.
The third line.
This line has /bin/bash in it, twice => /bin/bash.
The fifth line.
And /bin/bash here and here /bin/bash and here /bin/bash
$ 
$

tyler_durden
# 6  
Old 08-29-2009
Warlock im not good at shell but let me help you as far as i can. Use SED for this and the command should be something like below:

Code:
sed 's/\/bin\/bash/\/bin\/csh/g' /etc/passwd

regards
# 7  
Old 08-29-2009
Quote:
Originally Posted by warlock129
I am trying to write a command that can help me count the number of lines in the /etc/passwd file ending in bash.
Code:
awk -F\/ '$NF=="bash"{a++}END{print a}' /etc/passwd

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

UNIX script to check word count of each word in file

I am trying to figure out to find word count of each word from my file sample file hi how are you hi are you ok sample out put hi 1 how 1 are 1 you 1 hi 1 are 1 you 1 ok 1 wc -l filename is not helping , i think we will have to split the lines and count and then print and also... (4 Replies)
Discussion started by: mirwasim
4 Replies

2. Shell Programming and Scripting

How do i replace a word ending with "key" using awk excpet for one word?

echo {mbr_key,grp_key,dep_key,abc,xyz,aaa,ccc} | awk 'gsub(/^|abc,|$/,"") {print}' Required output {grp_key,xyz,aaa,ccc} (5 Replies)
Discussion started by: 100bees
5 Replies

3. Shell Programming and Scripting

Shell Script @ Find a key word and If the key word matches then replace next 7 lines only

Hi All, I have a XML file which is looks like as below. <<please see the attachment >> <?xml version="1.0" encoding="UTF-8"?> <esites> <esite> <name>XXX.com</name> <storeId>10001</storeId> <module> ... (4 Replies)
Discussion started by: Rajeev_hbk
4 Replies

4. Shell Programming and Scripting

Count same word which has come many times in single lines & pars

can i get a simple script for , Count same word which has come many times in single lines & pars Eg file would be == "Thanks heman thanks thanks Thanks heman thanks man" So resullt should be Thanks = 5 heman=2 man = 1 thanks in advance :) Please use code tags for code and... (1 Reply)
Discussion started by: heman96
1 Replies

5. Shell Programming and Scripting

perl count lines with certain word int

Hi Guys I have a text file that contains the message like this /var/log/messages.all-20120401: Mar 26 12:12:23 brent kernel: NVRM: Xid (0003:00): 43, 0005 00009097 00000000 00000000 00001b0c 1000f010 /var/log/messages.all-20120401: Mar 27 20:42:40 brent kernel: NVRM: Xid (0003:00): 43,... (4 Replies)
Discussion started by: ab52
4 Replies

6. UNIX for Dummies Questions & Answers

Find EXACT word in files, just the word: no prefix, no suffix, no 'similar', just the word

I have a file that has the words I want to find in other files (but lets say I just want to find my words in a single file). Those words are IDs, so if my word is ZZZ4, outputs like aaZZZ4, ZZZ4bb, aaZZZ4bb, ZZ4, ZZZ, ZyZ4, ZZZ4.8 (or anything like that) WON'T BE USEFUL. I need the whole word... (6 Replies)
Discussion started by: chicchan
6 Replies

7. Shell Programming and Scripting

Search the word to be deleted and delete lines above this word starting from P1 to P3

Hi, I have to search a word in a text file and then I have to delete lines above from the word searched . For eg suppose the file is like this: Records P1 10,23423432 ,77:1 ,234:2 P2 10,9089004 ,77:1 ,234:2 ,87:123 ,9898:2 P3 456456 P1 :123,456456546 P2 abc:324234 (2 Replies)
Discussion started by: vsachan
2 Replies

8. UNIX for Dummies Questions & Answers

Word Count

Hi All, Please let me know how to get the count of a particular word in a file. Example. I am looking for count of word 'result' in a file abc.xml. Thanks, Shankar (10 Replies)
Discussion started by: s_chowhan
10 Replies

9. Shell Programming and Scripting

sed find word ending with

Hi I want to use sed to find words ending in a pattern and then have it delete these words. Not sure if there is a better command to do this. I was thinking of a find and replace but I'm not sure of the syntax to look for a word ending with this pattern and not sure how to replace the whole word. (2 Replies)
Discussion started by: eltinator
2 Replies

10. UNIX for Dummies Questions & Answers

word count showing wrong number of lines

Hi , I am using SUN OS Version 5.6. I have a file that contains records of length 270. when I do 'set nu' in vi editor, I get the count as 86. whereas when I do "wc -l" on the command prompt, it shows the count as only 85. this is very strange. why would the 'wc' show 1 record less. The job... (3 Replies)
Discussion started by: tselvanin
3 Replies
Login or Register to Ask a Question