Getting pathname variables with ksh


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
Getting pathname variables with ksh

With C Shell you can get the root, head, tail and extension of a pathname by using pathname variable modifiers.

Example Script:

#! /bin/csh
set pathvar=/home/WSJ091305.txt
echo $pathvar:r
echo $pathvar:h
echo $pathvar:t
echo $pathvar:e

The result of executing this script is:

/home/WSJ091305
/home
WSJ091305.txt
txt

My question is: How can this be done using ksh (I specifically need to get the extension)?

Thanks in advance for the help.
# 2  
Quote:
Originally Posted by BCarlson
With C Shell you can get the root, head, tail and extension of a pathname by using pathname variable modifiers.

Example Script:

#! /bin/csh
set pathvar=/home/WSJ091305.txt
echo $pathvar:r
echo $pathvar:h
echo $pathvar:t
echo $pathvar:e

The result of executing this script is:

/home/WSJ091305
/home
WSJ091305.txt
txt

My question is: How can this be done using ksh (I specifically need to get the extension)?

Thanks in advance for the help.
Code:
#!/bin/ksh

pathvar='/home/WSJ091305.txt'
echo "r->[${pathvar%%.*}]"
echo "h->[${pathvar%/*}]"
echo "t->[${pathvar##*/}]"
echo "e->[${pathvar#*.}]"

# 3  
Quote:
Originally Posted by vgersh99
Code:
#!/bin/ksh

pathvar='/home/WSJ091305.txt'
echo "r->[${pathvar%%.*}]"
echo "h->[${pathvar%/*}]"
echo "t->[${pathvar##*/}]"
echo "e->[${pathvar#*.}]"

Now I'm getting this:

r->[/home/WSJ091305]
h->[/home]
t->[WSJ091305.txt]
e->[txt]

Is there a way to only get the results as with the csh?
# 4  
well.... it's for you to see HOW it can be used.
# 5  
Will do.

Quote:
Originally Posted by vgersh99
well.... it's for you to see HOW it can be used.
Thanks for the assist. I appreciate it.
# 6  
MySQL This worked beautifully.

I was able to get what I needed. Could you point me to some documentation that explains the commands you used to get this? Specifically, what all the characters do? I'm unfamiliar with them. Thanks so much for your help.
# 7  
Read the manuals.

In man ksh under the section Parameters

In man sh under the section Parameter Expansion
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #977
Difficulty: Medium
A Linux Kernel Code of Conflict was introduced on 8 March 2012.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk - using variables in pattern which contain full pathname

Hello. I would like to make this bash command working. In the following code, the bash variable 'ZYPPER_LOCAL_REP' contain a full pathname like '/path/to/path/somewhere' The command list all available repositories, search for the string 'zipper_local' then on the same line search for... (4 Replies)
Discussion started by: jcdole
4 Replies

2. UNIX for Dummies Questions & Answers

Formating variables in KSH

Hi Friends , I want to know how to format the output for the following: i searched in the forum and couldnt get the exact requirement. Thanks in advance . (2 Replies)
Discussion started by: i150371485
2 Replies

3. Shell Programming and Scripting

Help cannot concatenate Ksh variables ?

Cannot combine these two strings into one line, either as a 3rd variable or echo or printing ? Frustrating. for i in `cat /scripts/pathList.dat` do OldRepo= grep Oldhostname ${i}/.svn/entries | tail -1 NewRepo= grep Oldhostname ${i}/.svn/entries | tail -1 | sed '/Oldhostname/... (41 Replies)
Discussion started by: pcpinkerton
41 Replies

4. Shell Programming and Scripting

Loop to define variables in KSH

Hi, I am trying to use a database to store configurations in an environment definition scripts to make the configurations easily modifiable. (long story short - it is an easier process to make changes in the db than trying to deploy a file). The values will be stored in the database in the... (1 Reply)
Discussion started by: gbala
1 Replies

5. Shell Programming and Scripting

ksh - for loop with variables

Hi, I 'm trying to send an e-mail for every different line in the .txt for i in {1..$variable} do sed -n "/$i$/p" text.txt done I have two problems about this. First one is that for loop doesn't work and the second one is that i cant get the output of sed (4 Replies)
Discussion started by: ozum
4 Replies

6. Shell Programming and Scripting

Combining two variables in ksh

I can't believe I can't figure this out... given this code: CARS_DATA_LIST=`cat /tmp/file1 | awk '{print $1}' ` FMSA_DATA_LIST=`cat /tmp/file2 | awk '{print $1}' ` The value of each of the above variables is: CARS = a b c d e f g FMSA = a b c q r s I want to declare a third... (8 Replies)
Discussion started by: Shoeless_Mike
8 Replies

7. Shell Programming and Scripting

How to preserve NL in Ksh variables?

I'm trying to set a variable to the output of a command. This is what the comand output to the display looks like: />hciconndump -v TOsiu Dump of connection(s): TOsiu ---------------------------------------------------------------------- Process: A60Tsiu Connection: TOsiu... (2 Replies)
Discussion started by: troym72
2 Replies

8. Shell Programming and Scripting

subtracting variables in ksh

hi all, how do i subract variables in shell ?? am trying to space out the headers and the output generated by the shell so they all line up : currently the output is like this : servers : users server1 : 10 latestServer : 50 so i thought... (3 Replies)
Discussion started by: cesarNZ
3 Replies

9. UNIX for Advanced & Expert Users

Ksh - Env. Variables ??

Hey all, I have been using Ksh and in that I am setting Environment variables. To set Env. Variables I have created my own file "BuildScript.sh" in which i have written : export CLASSPATH=/somedir/some other dir/file:. export PATH=/some dir/file:. But when i am calling this... (4 Replies)
Discussion started by: varungupta
4 Replies

10. Shell Programming and Scripting

variables in ksh

I'm new to unix scripting. How would I go about pulling the first 3 characters from a variable in ksh and storing in another variable? Thanks. (9 Replies)
Discussion started by: steve6368
9 Replies

Featured Tech Videos