Sponsored Content
Full Discussion: Parsing a variable
Top Forums UNIX for Dummies Questions & Answers Parsing a variable Post 302447608 by agama on Monday 23rd of August 2010 08:04:27 PM
Old 08-23-2010
Depends on which shell. For Kshell, and probably bash, this will work:

Code:
# assume original filename in ofile
filename=${ofile##*/}            # basename -- delete all to the last slant
path=${ofile%$filename}         # delete the filename from the original path/file

Yes, you could use the basename and dirname commands, but those, or any other external command, are much less efficient than using shell built-in variable manipulation.

This does leave path with a trailing /. If you want it removed, add one more line:
Code:
path=${path%/}

Path will of course be empty if the original filename did not have a path component.

Last edited by agama; 08-23-2010 at 09:07 PM.. Reason: fixed typo
This User Gave Thanks to agama For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Parsing a variable string

Hi all, I have a problem surfacing and I hope you all could help. What I have to do is take a input file and fill out a fax template from that file. The biggest problem I found was I have to parse the string "//FAX(faxnumber=555-5555;style="style1"; and on and on. The string can be in any... (5 Replies)
Discussion started by: pageld
5 Replies

2. UNIX for Dummies Questions & Answers

Parsing a variable length record

I need to pick a field out of a variable record - the field is always found 4 fields after a certain text string, but it can be on any line of the record and in any position across the record on a line. I have had no luck through any of the Unix editors being able to cut a field that isn't always... (17 Replies)
Discussion started by: Barb
17 Replies

3. Shell Programming and Scripting

parsing a string into variable

I know solution to this but I was wondering if its easier than what i think I have to pass 20 parameters to a script, which of course is not working so I parsed $3 to be a pipe deliminated string for instance below a.ksh One Two Compa|Compb|Compc|compd|............. Now i have to read... (5 Replies)
Discussion started by: Anubhav
5 Replies

4. Shell Programming and Scripting

parsing a variable

Hi, I want to get an input from user and parse the input. The legal characters allowed in the input are alnum(a-zA-Z0-0), . , - Also the first and las characters must be alnum only. e.g if the input is abc.ghh-sok.com then the script should return correct, and if the input is like... (2 Replies)
Discussion started by: g_rohit7
2 Replies

5. Shell Programming and Scripting

Parsing a variable length file

Hi I am new to shell scripting. I need to parse a file which contains the header and detail records and split into n of file based on dept ID, for ex. INPUT FILE: DEPT ID: 1 EMPNAME: XYZ EMPAddress: XYZZZ DEPT ID: 2 EMPNAME: ABC EMPAddress: ABCD DEPT ID: 1 EMPNAME: PQR EMPAddress:... (6 Replies)
Discussion started by: singhald
6 Replies

6. Shell Programming and Scripting

Parsing file list in variable

Hello, somewhere in a shell script, i am storing the output of "ls" into a variable. My question is how can i parse this variable to get each filepath. I don't want to create a temporary file to write down all the filenames and then parse it.. is there a easy way out.. here is what... (3 Replies)
Discussion started by: prasbala
3 Replies

7. Shell Programming and Scripting

XML parsing with a variable

I have the following XML <Audit_Type>1</Audit_Type><Session_Id>34505863</Session_Id> <StatementId>1</StatementId><EntryId>1</EntryId> <Extended_Timestamp>2012-03-06T10:25:20.789459</Extended_Timestamp> <DB_User>KASINIY</DB_User> <OS_User>majohn1</OS_User><OS_Process>28636</OS_Process>... (3 Replies)
Discussion started by: BeefStu
3 Replies

8. Shell Programming and Scripting

Parsing Output of a Variable

i have a log file that contains something similar to this: one two three four five six seven eight nine ten eleven twelve thirteen fourteen one two three four five six seven eight nine ten eleven twelve thirteen fourteen one two three four five six seven eight nine ten eleven twelve... (3 Replies)
Discussion started by: SkySmart
3 Replies

9. Shell Programming and Scripting

Parsing a $VARIABLE within a script.

Hello all, I have a situation where I need to parse for certain items from a $VARIABLE within a sh script. The sh script is run when an alert comes in. The alert data payload has a Message field called "EVENTMSG" The script that is run takes the "EVENTMSG" and prints it out to the... (12 Replies)
Discussion started by: dlundwall
12 Replies

10. Shell Programming and Scripting

Parsing csv file and pass to a variable

Hi, Newbie here and I need some help to parse a csv file that contains fields separated by ",". What I need to achieve here is, read the 1 line file and extract 240 fields and pass to a variable and then read the next 240 fields and pass to a variable, over and over. If anyone can assist that... (4 Replies)
Discussion started by: tmslixx
4 Replies
GATHER(1)						      General Commands Manual							 GATHER(1)

NAME
gather - gather up the files in a directory for transmission SYNOPSIS
gather [-s] source_dir [-d] dest_dir [-b] bytes [-f] file OPTIONS
-b Desired number of bytes per output file -d Destination directory -f Base name of output files -s Source directory EXAMPLES
gather # Collect files in current dir into 60K archives gather -d dir # Put the archives in dir gather -b 90000 # Try to produce 90K archives gather -s .. -d targ -b 5000 # Try to produce 5K archives DESCRIPTION
It is often useful to collect all the files in a directory into one or more archives for transmission by mail. This program collects all the files in the source directory (default: current directory) and puts them into a shar archive. The shar archive is then compressed and uuencoded. An attempt is made to have the final .uue file be about the given size (default: 60K), but since gather cannot really predict how much shar will add to the file, how much compress will reduce the file, and how much uue will add again, the sizes can fluctuate. If the -f file flag is given, the archives will be given the names file_00.uue, file_01.uue etc. If -f is not given, the name of the source directory is used as the base name. Since 7 characters of suffix are appended, the base name should not exceed 7 characters. GATHER(1)
All times are GMT -4. The time now is 01:59 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy