<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Scripting on Tahir Hashmi</title><link>https://tahirhashmi.com/tags/scripting/</link><description>Recent content in Scripting on Tahir Hashmi</description><generator>Hugo</generator><language>en-GB</language><managingEditor>mail@tahirhashmi.com (Tahir Hashmi)</managingEditor><webMaster>mail@tahirhashmi.com (Tahir Hashmi)</webMaster><lastBuildDate>Mon, 29 Dec 2025 11:13:16 +0700</lastBuildDate><atom:link href="https://tahirhashmi.com/tags/scripting/index.xml" rel="self" type="application/rss+xml"/><item><title>Find and Edit File</title><link>https://tahirhashmi.com/posts/2011/11/24/find-and-edit-file/</link><pubDate>Thu, 24 Nov 2011 10:28:09 +0000</pubDate><author>mail@tahirhashmi.com (Tahir Hashmi)</author><guid>https://tahirhashmi.com/posts/2011/11/24/find-and-edit-file/</guid><description>&lt;p&gt;While working on a huge code-base with several thousand source files, it becomes difficult to remember where each file is. If you use conventions like one file per class, you can at least figure out the file name. E.g. the definition of class &lt;code&gt;Foo&lt;/code&gt; would be found in &lt;code&gt;Foo.class.xx&lt;/code&gt; or something like that.&lt;/p&gt;
&lt;p&gt;Thankfully, &lt;a href="http://betterthangrep.com"

 target="_blank" rel="noopener"
&gt;ack&lt;/a&gt; makes it easy to find the location files in a project. Just say, &lt;code&gt;ack -g Foo.class&lt;/code&gt; and voila! it tells you to dig in &lt;code&gt;modules/frob/model/include/Foo.class.xx&lt;/code&gt; or whatever abominable directory hierarchy it may be embedded in. So when you decide to kill that error at line 324 of class Foo, all you need to do is:&lt;/p&gt;</description></item></channel></rss>