08-16-2010
understanding {%/*}/
Hi Gurus:
I am trying to understand the following line of code.I did enough of googling to understand but no luck.Please help me understand the follow chunk of code:
X=$0
MOD=${X%/*}/env.ksh
X is the current script from which I am trying to execute.
Say if X=test.ksh
$MOD is echoing : "test.ksh/env.ksh"
What I am trying to understand is,What exactly is {X%/*} doing.
Thanks in advance
Last edited by Scott; 08-16-2010 at 02:06 AM..
Reason: Moved from AIX forum
9 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I just started shell coding and I'm a bit confused on how 'mv' works can someone explain to me how it works and if i did this correctly. Thanks.
echo "Enter Name of the first file:"
read file1
#echo $file1
if ; then
echo "Sorry, file does not exist."
exit 1
... (16 Replies)
Discussion started by: taiL
16 Replies
2. Shell Programming and Scripting
# sub: find block (in cols), return line-numbers (begin-end) or 0 if notfound
sub findb{
my ($exp1,$col1,$exp2,$col2)= @_; # $exp = expression to find, $col - column to search in
my $cnt=0;
my ($val1,$val2);
my ($beg,$end);
for($cnt=1;$cnt<=65536;$cnt++){
$val1 =... (3 Replies)
Discussion started by: suvenduperl
3 Replies
3. Solaris
Hi
I have a questions related 2 commands : 'du' and 'ls'.
Why is the difference between output of 'du' and 'ls' cmd's ?
Command 'du' :
------------------
jakubn@server1 /home/jakubn $ du -s *
4 engine.ksh
1331 scripts
'du -s *' ---> shows block count size on disk (512 Bytes... (5 Replies)
Discussion started by: presul
5 Replies
4. Shell Programming and Scripting
Hi all
I stuck with a problem. I want to understand the execution of the below code. Can any one please help me
`sqlplus username/passwd@DB << EOF
set serveroutput on
declare
begin
sql_query;
end;
/
commit
/
quit
EOF`
My ques is why do we use EOF and how does it help. (4 Replies)
Discussion started by: parthmittal2007
4 Replies
5. Shell Programming and Scripting
Hi,
Please help me to understand the bold segments in the below regex.
Both are of same type whose meaning I am looking for.
find . \( -iregex './\{6,10\}./src' \) -type d -maxdepth 2
Output:
./20111210.0/src
In continuation to above:
sed -e 's|./\(*.\{1,3\}\).*|\1|g'
Output: ... (4 Replies)
Discussion started by: vibhor_agarwali
4 Replies
6. Shell Programming and Scripting
Hi Guys,
I am new to scripting , I am trying to rebuild a script based on an old script. Can someone help me figure out what the script is doing? This is only a part of the script.
I am looking to interpret these two points in the scripts:-
1)
test=`echo $?`
while
I do not... (3 Replies)
Discussion started by: rajsan
3 Replies
7. Shell Programming and Scripting
Hi, I saw the following explanation about alias in bash from gnu website, but I didn't get the meaning:
Bash always reads at least one complete line of input before executing any of the commands on that line.
Aliases are expanded when a command is read, not when it is executed. Therefore, an... (3 Replies)
Discussion started by: Roy987
3 Replies
8. UNIX for Dummies Questions & Answers
I tried to use lseek system call to determine the number of bytes in a file. To do so, I used open system call with O_APPEND flag to open a file. As lseek returns the current offset so I called lseek for opened file with offset as zero and whence as SEEK_CUR. So I guess it must return the number of... (3 Replies)
Discussion started by: Deepak Raj
3 Replies
9. Shell Programming and Scripting
Hi,
I found this in a script and I would like to know how this works
Code is here:
# var1=PART1_PART2
# var2=${var1##*_}
# echo $var2
PART2
I'm wondering how ##* makes the Shell to understand to pick up the last value from the given. (2 Replies)
Discussion started by: sathyaonnuix
2 Replies
LEARN ABOUT OPENSOLARIS
echo
echo(1B) SunOS/BSD Compatibility Package Commands echo(1B)
NAME
echo - echo arguments to standard output
SYNOPSIS
/usr/ucb/echo [-n] [argument]
DESCRIPTION
echo writes its arguments, separated by BLANKs and terminated by a NEWLINE, to the standard output.
echo is useful for producing diagnostics in command files and for sending known data into a pipe, and for displaying the contents of envi-
ronment variables.
For example, you can use echo to determine how many subdirectories below the root directory (/) is your current directory, as follows:
o echo your current-working-directory's full pathname
o pipe the output through tr to translate the path's embedded slash-characters into space-characters
o pipe that output through wc -w for a count of the names in your path.
example% /usr/bin/echo "echo $PWD | tr '/' ' ' | wc -w"
See tr(1) and wc(1) for their functionality.
The shells csh(1), ksh(1), and sh(1), each have an echo built-in command, which, by default, will have precedence, and will be invoked if
the user calls echo without a full pathname. /usr/ucb/echo and csh's echo() have an -n option, but do not understand back-slashed escape
characters. sh's echo(), ksh's echo(), and /usr/bin/echo, on the other hand, understand the black-slashed escape characters, and ksh's
echo() also understands a as the audible bell character; however, these commands do not have an -n option.
OPTIONS
-n Do not add the NEWLINE to the output.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWscpu |
+-----------------------------+-----------------------------+
SEE ALSO
csh(1), echo(1), ksh(1), sh(1), tr(1), wc(1), attributes(5)
NOTES
The -n option is a transition aid for BSD applications, and may not be supported in future releases.
SunOS 5.11 3 Aug 1994 echo(1B)