Visit Our UNIX and Linux User Community


substring ??


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting substring ??
# 1  
Old 10-01-2007
Error substring ??

I execute command on this file and it gives o/p like this.

COMMAND $ fuser -f /clocal/sanjay/AccessMonitor

/clocal/sanjay/AccessMonitor: 1368322c

To truncate 'c', i used tr -dc "[:digit:]\n" but then it does't give 1368322 as O/P.

Any help ??
# 2  
Old 10-01-2007
Quote:
Originally Posted by varungupta
I execute command on this file and it gives o/p like this.

COMMAND $ fuser -f /clocal/sanjay/AccessMonitor

/clocal/sanjay/AccessMonitor: 1368322c

To truncate 'c', i used tr -dc "[:digit:]\n" but then it does't give 1368322 as O/P.

Any help ??
What is the input to the tr command ?

For me that tr command works fine.
Code:
[/tmp]$ echo 123abc | tr -dc "[:digit:]\n"
123
[/tmp]$

# 3  
Old 10-01-2007
Quote:
Originally Posted by vino
What is the input to the tr command ?

For me that tr command works fine.
Code:
[/tmp]$ echo 123abc | tr -dc "[:digit:]\n"
123
[/tmp]$

pid = ''
fuser -f /clocal/sanjay/AccessMonitor > tempfind.txt
pid = cat tempfind.txt | tr -dc "[:digit:]\n"
echo "$pid"



When prompt I run the above command, it gives....
$ fuser -f /clocal/AccessMonitor
/clocal/AccessMonitor: 1368322c

Now I want the no. (without ant character) into the variable pid (given above).

Any idea ??
# 4  
Old 10-01-2007
CPU & Memory Solution please :)

Quote:
Originally Posted by vino
What is the input to the tr command ?

For me that tr command works fine.
Code:
[/tmp]$ echo 123abc | tr -dc "[:digit:]\n"
123
[/tmp]$

Can you rectify problem in the following script ??

MYPATH="/clocal/Sanjay/"
MAIL_RECIPIENTS="abcx@zzz.com"
Subject="File accessed in last few minutes are ::"
>tempmail.txt
>tempfind.txt

## List all the files which one accessed since last 1 min #####

for file_dir in `find $MYPATH -amin -1`
do
### Find out the PID for that files which one been accessed
pid = ''
fuser -f "$file_dir" > tempfind.txt
pid = cat tempfind.txt | tr -dc "[:digit:]\n"

echo "$pid"

### Find out the owner/user name for that Process
### Replace the $access_user_filed with the filed no from the ps -ef
### command
user = `ps -ef | grep -w "$pid" | awk '{ print $1 }'`
echo " $file_dir access by the $user " >> tempmail.txt
done

cat tempmail.txt | mailx -s "$Subject" "$MAIL_RECIPIENTS"
---------------------------------------------------------------------

Once red faced commands will run successfully, means task is achieved.
Now, in variable pid, i am not getting any thing. I want the process no. related to the file accessed, using fuser command. As shown above.

Any help will be appreciable. !!
Smilie
# 5  
Old 10-01-2007
Quote:
Originally Posted by varungupta
fuser -f "$file_dir" > tempfind.txt
pid = cat tempfind.txt | tr -dc "[:digit:]\n"


Once red faced commands will run successfully, means task is achieved.
Now, in variable pid, i am not getting any thing. I want the process no. related to the file accessed, using fuser command. As shown above.

Code:
fuser -f "$file_dir" > tempfind.txt
pid=$(tr -dc "[:digit:]\n" < tempfind.txt)

# 6  
Old 10-01-2007
Try :
Code:
pid=`cat tempfind.txt | tr -dc "[:digit:]"`

Or
Code:
pids=`fuser -f "$file_dir" | tr -dc "[:digit:]"`

Jean-Pierre.
# 7  
Old 10-01-2007
please check once again !!

Quote:
Originally Posted by vino
Code:
fuser -f "$file_dir" > tempfind.txt
pid=$(tr -dc "[:digit:]\n" < tempfind.txt)

Thanks vino.
Don;t you think that to redirect the contents from the tempfind.txt file, unix creates a saperate process with unique Porcess id. And to truncate it creates another process with unique process id.
I think above command will club the process ids. (of all the processes used in above command) to one id, hence this clubbed id won;t be able get from ps table.

Its not working, means not giving the name of the user from the ps table according to the process id.

Please check it !!
Thanks in advance !!Smilie

Previous Thread | Next Thread
Test Your Knowledge in Computers #788
Difficulty: Medium
Steve Wozniak was expelled from the University of California, Berkeley in his first year for hacking the university's computer system.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Substring

Hi All, In ksh, am trying to get a substring stuff done. Not sure where the problem is.. can you guys guide me on this... for instance, var1=41, and var2=4175894567, then i want to know whether var2 starts with var1.. var1 and var2 can be of any length.. VAR1=41 VAR2=419068567777... (6 Replies)
Discussion started by: nram_krishna@ya
6 Replies

2. Shell Programming and Scripting

Get the substring

Hi All, I have a ouput string likes 'u8wos' or 'u10acsd' or somthing else 'u{number}{any characters}'and I want to get the number behind the letter 'u' by bash shell. Thanks Damon (11 Replies)
Discussion started by: Damon_Qu
11 Replies

3. UNIX for Dummies Questions & Answers

Getting Substring

Hi, I hav a string lets say aa.txt:bb:txt length of the string can vary.. I have to keep the token inside a array and the delimiter is : plz send me the code (2 Replies)
Discussion started by: Deekay.p
2 Replies

4. Shell Programming and Scripting

substring

I have a string '<Hi>abc</Hi>" How to print "abc" (6 Replies)
Discussion started by: sandy1028
6 Replies

5. UNIX for Dummies Questions & Answers

Substring

Hi I use the below cmd to get the list of files that are modified than <temp> file in the <path> diretory cmd:find <path> -name '*.zip' -type f -newer <temp> -print i am getting all the list of files that are new or modified, with abs path, i want to copy all of these files to a... (3 Replies)
Discussion started by: Naveen_5960
3 Replies

6. UNIX for Dummies Questions & Answers

Need help with substring

I need to check the occurrence of one string within another. code ******************** if ;then do something done ******************** Thanks (7 Replies)
Discussion started by: w020637
7 Replies

7. Shell Programming and Scripting

Substring HELP!

Hi, I am trying to do something which I thought was very simple but still being a beginner, has proved not to be. Input: val1 val2 val3 val4 val5 val6 . . . etc Desired Output: Every row in which value of val6 is a number starting with 0.0 or contains a capital E. The input... (2 Replies)
Discussion started by: awknerd
2 Replies

8. Shell Programming and Scripting

substring

Dear All, i have a file that contains, FROM_DATE: 06-08-2007 00:00:00 TO_DATE: 06-08-2007 23:59:59 Total number of lines: 6874154 in another file,the contain is, FROM_DATE: 06-08-2007 00:00:00 Total number of lines: 874154 alltime i want to find the particular string... (4 Replies)
Discussion started by: panknil
4 Replies

9. Shell Programming and Scripting

How do I Substring ??

Hello everyone. I'm writing a script in UNIX. The purpose is to get the second character from a variable that stores the system year. This is the code: unix_year_yy=`date "+%g"` This will return "07" in variable unix_year_yy. How can I get the second character (7)?? (6 Replies)
Discussion started by: Rigger
6 Replies

10. UNIX for Dummies Questions & Answers

substring

Hi, I have a value of a filepath in a variable DATAFILE with value as "customtop/gpsore37/gepspo/1.0/bin/ashoka.csv ". Now i want the value of last 4 charcters in to another variable. That is EXTENSION = .csv How can i do this in Shell scripting Thanks in advance Alla Kishore (8 Replies)
Discussion started by: alla.kishore
8 Replies

Featured Tech Videos