09-28-2004
From man bash
Quote:
${parameter%word}
${parameter%%word}
The word is expanded to produce a pattern just as in pathname
expansion. If the pattern matches a trailing portion of the
expanded value of parameter, then the result of the expansion is
the expanded value of parameter with the shortest matching pat-
tern (the ``%'' case) or the longest matching pattern (the
``%%'' case) deleted. If parameter is @ or *, the pattern
removal operation is applied to each positional parameter in
turn, and the expansion is the resultant list. If parameter is
an array variable subscripted with @ or *, the pattern removal
operation is applied to each member of the array in turn, and
the expansion is the resultant list.
So basically, discard the shortest pattern matching "/*" (i.e. a forward slash followed by "anything") from the right hand side of the variables value, and return the rest.
Cheers
ZB
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Good afternoon,
Sir's,
I would like to seek your assistance regarding on this matter.
$cat file1
111 aaaa bbb aass
aaa files file1
temp temp1
pix 222 11 22 1 33 44
desired output:
aaaa bbb aass
files file1
temp1
222 11 22 1 33 44
thanks (7 Replies)
Discussion started by: invinzin21
7 Replies
2. Shell Programming and Scripting
Hi
Can i have an example where i should be able to cut columns
(like for eg cut -c 1-3) in sed or awk.
Regards
Dhana (12 Replies)
Discussion started by: dhanamurthy
12 Replies
3. Shell Programming and Scripting
I have been reading for a few hours trying to educate myself enough to accomplish this task, so please know I have performed some research. Unfortunately, I am not a *NIX scripting expert, or a coder. I come from a network background instead.
SO, here is my desired outcome. I have some Cisco... (5 Replies)
Discussion started by: abbzer0
5 Replies
4. Shell Programming and Scripting
Hi,
sorry for newbie question :confused:
can't find how to cut ?
from
1000 2000 word some text1....
100 200 300 word some text2....
10 20 30 abc word some text3....
to
some text1....
some text2....
some text3.... (7 Replies)
Discussion started by: Trump
7 Replies
5. UNIX for Dummies Questions & Answers
Hi,
From the file "example" with lines like below, I need the int value associated with ENG , i.e, 123
SUB: ENG123, GROUP 1
SUB: HIS124, GROUP 1
..
..
Normally , i do
grep ENG example | cut -d ' ' -f 2 | cut -c 4-6
Is it possible to do it in simpler way using awk/sed ?
... (5 Replies)
Discussion started by: priyam
5 Replies
6. Shell Programming and Scripting
Hi Gurus,I have a seemingly simple problem but struggling with it.It is as follows :
I/p string -
ABCDEFGHIJ20100909.txt
desired o/p -
AB,DEF,20100909,ABCDEFGHIJ20100909.txt
How to achieve it ?Thanks in advance.
Please use code tags, thank you (20 Replies)
Discussion started by: sumoka
20 Replies
7. Shell Programming and Scripting
Hello,
i have a file, i open the file and read the line, i want to get the first item in the csv file and also teh third+6 item and wirte it to a new csv file. only problem is that using echo it takes TOO LONG:
please help a newbie. below is my code:
WorkingDir=$1
FileName=`cut -d ',' -f... (2 Replies)
Discussion started by: limamichelle
2 Replies
8. Shell Programming and Scripting
Hi,
I have a script that, basically, has two input files of this type:
file1
key1=value1_1_1
key2=value1_2_1
key4=value1_4_1
...
file2
key2=value2_2_1
key2=value2_2_2
key3=value2_3_1
key4=value2_4_1
...
My files are 10k lines big each (approx).
The keys are strings that don't... (7 Replies)
Discussion started by: fzd
7 Replies
9. Shell Programming and Scripting
hyper link- abc:8081/xyz/2.5.6/rtyp-2.5.6.jar
Needs to get "rtyp-2.5.6.jar" i.e character after last backslash "/"
how to do this using sed/awk??
help is highly appreciated. (7 Replies)
Discussion started by: kkscm
7 Replies
10. Shell Programming and Scripting
HI All,
I am new to unix. I have a file would like to do some editing by using awk, cut and sed. Could anyone help?
This file contain 100 lines. There are one line for example:
2,"102343454",5060,"579668","579668","579668","SIP",,,"825922","035885221283026",1,268,"00:59:00.782 APR 17... (2 Replies)
Discussion started by: mimilaw
2 Replies
fnmatch(3C) fnmatch(3C)
NAME
fnmatch() - match filename patterns
SYNOPSIS
DESCRIPTION
performs pattern matching as described in regexp(5) under By default, the rule qualifications for filename expansion do not apply; i.e.,
periods (dots) and slashes are matched as ordinary characters. This default behavior can be modified by using the flags described below.
The flag argument modifies the interpretation of pattern and string. If which is defined in is set in flag, a slash character in string
must be explicitly matched by a slash in pattern; it cannot be matched by either the asterisk or question mark special characters or by a
bracket expression.
If is set in flag, a leading period must be explicitly matched. It will not be matched by a bracket expression, question mark or asterisk.
By default, a period is leading if it is the first character in string. If is set in flag, a period is leading if it is the first charac-
ter in string or immediately follows a slash.
If is not set in flag, a backslash character in pattern followed by any other character matches that second character in string. In par-
ticular, matches a backslash in string. If is set, a backslash character is treated as an ordinary character.
If flag is zero, the slash character and the period are treated as regular characters. If flag has any other value, the result is unde-
fined.
RETURN VALUE
If string matches the pattern specified by pattern, returns zero. Otherwise, returns non-zero.
EXAMPLE
The following excerpt uses to check each file in a directory against the pattern
pattern = "*.c";
while(dp = readdir(dirp)){
if((fnmatch(pattern, dp->d_name,0)) == 0){
/* do processing for match */
...
}
}
AUTHOR
was developed by OSF and HP.
SEE ALSO
sh(1), glob(3C), thread_safety(5).
STANDARDS CONFORMANCE
fnmatch(3C)