stripping out certain charecters


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting stripping out certain charecters
# 1  
Old 11-29-2006
Error stripping out certain charecters

we are ftping zipped up files from the development server to the production server daily.The files are in this format filename.dat.20061231.12131.gz

I have to unzip the file (i can do that with gunzip) and then strip out the timestamp after the .dat extension.

I can do something like this

print $line | awk -F"." '{ print $1,$2}' and assign it a variable and then rename the file accordingly.But thats not generic..can anyone please suggest a way to just strip of all the characters after .dat .Thanks


Mervin
# 2  
Old 11-29-2006
One way using ksh:
Code:
fn1=filename.dat.20061231.12131.gz
fn2=${fn1%.dat.*}.dat
echo $fn2
filename.dat

# 3  
Old 11-30-2006
Thanks Glenn worked perfectly ..exactly what I wanted..however I am not very clear about the logic of whats happening...is it replacing all the text starting with .dat with .dat ie .dat.20061212.1341 with .dat ...if so how do the various metacharecters work in this script...thanks so much once again..sorry about the late response
# 4  
Old 11-30-2006
You are correct. Here is how it works (this is from O'Reilly's Learning the Korn Shell; also see man ksh for more information):
Code:
Operator: ${variable#pattern}
Meaning: If the pattern matches the beginning of the variable's value, 
delete the shortest part that matches and return the rest.
 
Operator: ${variable##pattern}
Meaning: If the pattern matches the beginning of the variable's value, 
delete the longest part that matches and return the rest.
 
Operator: ${variable%pattern}
Meaning: If the pattern matches the end of the variable's value, 
delete the shortest part that matches and return the rest.
 
Operator: ${variable%%pattern}
Meaning: If the pattern matches the end of the variable's value,
delete the longest part that matches and return the rest.

# 5  
Old 12-01-2006
Thanks for the clarification
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need to remove ^M charecters from all files

Hi, Below is my script where i wish to remove '^M' charecters from all files in the directory and sub-directories. Below code which is not able to remove all '^M' characters from all my files in all sub directories. find properties/* -type f -exec sh -c ' for file do tr -d '^M' < $file >... (3 Replies)
Discussion started by: mohtashims
3 Replies

2. Shell Programming and Scripting

Remove ^M charecters in all files

Hi, I wish to remove special charecters at the end of each line "^M" from all files under a folder and sub-folders. I do not seem to have dos2unix or Perl and my OS is Linux mymachine 2.6.32-431.5.1.el6.x86_64 #1 SMP Fri Jan 10 04:11:43 IST 2014 x86_64 x86_64 x86_64 GNU/Linux (8 Replies)
Discussion started by: mohtashims
8 Replies

3. Shell Programming and Scripting

Removing special ^M charecters

Hi, This code works for me for file in $(find /path/to/dir -type f); do tr -d '\r' <$file >temp.$$ && mv temp.$$ $file done However, i want this code to skip all .class files. Can you help me with the modified code. (2 Replies)
Discussion started by: mohtashims
2 Replies

4. UNIX for Dummies Questions & Answers

grep for special charecters

Hi, I need to grep for text between " 01/Aug" and " 02/Aug" in a text file. The awk command usually fails with the error saying "line too long" Is there other simpler ways to achieve this ? (12 Replies)
Discussion started by: shifahim
12 Replies

5. Solaris

Diffrence between stripping and mirroring

Hi All, What is the difference between stripping and mirroring? Thanks, Rafi. (3 Replies)
Discussion started by: rafidba.alvi
3 Replies

6. UNIX for Dummies Questions & Answers

Stripping down binaries

Hello, I am the CEO of Grand Tech Corporation. We are launching Linux NT and forgive me, but I do not know how to strip binaries down in Mandriva Linux. Can someone tell me a way to?:b: (2 Replies)
Discussion started by: Linux NT
2 Replies

7. Shell Programming and Scripting

stripping a variable down

I have a variable that has an absolute path for a file on my computer. This dynamically changes. Is there a way I can assign two new variables from that one? variable: /Users/keith/Desktop/test/file.mov 1) filename - no path or extention ....so just....file 2) path no filename or... (3 Replies)
Discussion started by: mainegate
3 Replies

8. UNIX for Advanced & Expert Users

removing frame charecters

Hi I have a requirement as follows. My Input file is as follows. COL1,COL2,COL3,COL4,COL5 987,2,3~7~5,400~468~598,0005~4687~5980 1111,2,2~7,400~468,0005~897 Expected OUTPUT ============ COL1,COL2,COL3,COL4,COL5 987,2,3,400,0005 987,2,7,468,4687 987,2,5,598,5980 1111,2,2,400,0005... (6 Replies)
Discussion started by: tkbharani
6 Replies

9. Shell Programming and Scripting

replacing a line of unknown charecters in a file

Hi All I have a requirement where using a script I grep a file for string (KSG/Password in below ) , get the next line which is the password and I need replace the whole line of unknown special charecters (encrypted password) with another line as given below . As in below i need to get... (12 Replies)
Discussion started by: malavm
12 Replies

10. Shell Programming and Scripting

Restricted charecters in FTP password

hi i am unable to connect to FTP server.My FTP password contain one special charecter '#'.it might be the problem for connecting.please clarify regarding this special charecter in the password.i need some information about restricted charecters in the shell script. thanks (5 Replies)
Discussion started by: srivsn
5 Replies
Login or Register to Ask a Question