<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Shell on Kuldeep Pisda</title><link>https://kdpisda.in/tag/shell/</link><description>Recent content in Shell on Kuldeep Pisda</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 12 Oct 2026 08:30:00 +0530</lastBuildDate><atom:link href="https://kdpisda.in/tag/shell/index.xml" rel="self" type="application/rss+xml"/><item><title>A Quoted ~ in PATH Works in Bash and Silently Becomes a Relative Path Everywhere Else</title><link>https://kdpisda.in/tilde-in-path-bash-lookup-hides-relative-entry/</link><pubDate>Mon, 12 Oct 2026 08:30:00 +0530</pubDate><guid>https://kdpisda.in/tilde-in-path-bash-lookup-hides-relative-entry/</guid><description>&lt;p&gt;Put &lt;code&gt;export PATH=&amp;quot;$PATH:~/.local/bin&amp;quot;&lt;/code&gt; in your &lt;code&gt;.bashrc&lt;/code&gt; and everything appears to work. &lt;code&gt;kek&lt;/code&gt; resolves, &lt;code&gt;which&lt;/code&gt; agrees, you move on. The environment variable now contains a literal tilde character, though, and that is the thing every child process inherits.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://disconnect3d.pl/2026/10/02/dont-put-tilde-in-your-path/"&gt;Disconnect3d described the problem&lt;/a&gt; and framed it as a quoted tilde not being expanded. I reproduced it, and the Bash result is more interesting than &amp;ldquo;it doesn&amp;rsquo;t work&amp;rdquo;: in Bash it does work, which is exactly why the bug survives.&lt;/p&gt;</description></item></channel></rss>