<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">from <a href="http://www.eec.com/business/ksh.pdf">http://www.eec.com/business/ksh.pdf</a>, it looks like the ${0#/} is checking that the script is called with a relative path instead of an absolute one<br>

</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Mar 11, 2014 at 1:42 PM, Jonathan Meek <span dir="ltr">&lt;<a href="mailto:jonathan.l.meek@gmail.com" target="_blank">jonathan.l.meek@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello everyone, <div><br></div><div>I am reviewing a script at work in order to understand that someone has done before me. They decided to ksh to write their scripting. There&#39;s an if statement I don&#39;t quite get and would be grateful for some light on the issue. Here&#39;s the code snippet: </div>


<div><br></div><div><div><font face="courier new, monospace">if [ ${0#/} = ${0} ] ; then</font></div><div><font face="courier new, monospace">        X=${PWD}/${0}</font></div><div><font face="courier new, monospace">    else</font></div>


<div><font face="courier new, monospace">        X=${0}</font></div><div><font face="courier new, monospace">    fi</font></div><div><font face="courier new, monospace">    cd $(dirname ${X})</font></div></div><div><font face="courier new, monospace"><br>


</font></div><div><font face="arial, helvetica, sans-serif">Based on my own searching for meaning and understanding and somewhat limited look into the man pages for ksh(couldn&#39;t remember how to search within vi), here&#39;s what I think is going on:</font></div>


<blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><font face="arial, helvetica, sans-serif">The if statement is checking what shell is currently running and as long as it is the expected shell, it will assign X to ${PWD}/${0}. If not, it will assign X to ${0}. Then it will change directories based on the output of dirname, which could be the current directory or the directory that variable X is at. </font></div>


</blockquote><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Does this sound right or I am missing something? </font></div><div><font face="arial, helvetica, sans-serif"><br>


</font></div><div><font face="arial, helvetica, sans-serif">Regards, </font></div><span class="HOEnZb"><font color="#888888"><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Jonathan</font></div>

</font></span></div>
<br>_______________________________________________<br>
Ale mailing list<br>
<a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
<a href="http://mail.ale.org/mailman/listinfo/ale" target="_blank">http://mail.ale.org/mailman/listinfo/ale</a><br>
See JOBS, ANNOUNCE and SCHOOLS lists at<br>
<a href="http://mail.ale.org/mailman/listinfo" target="_blank">http://mail.ale.org/mailman/listinfo</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Pete Hardie<br>--------<br>Better Living Through Bitmaps
</div>