Skip to main content

basename and dirname


basename

basename is a command used to get the filename or the leaf directory name from a path given. basically it will select the last string which is prefixed by /.

For example:

>basename /x/y/z/abc.txt
abc.txt

The above command will bring output as abc.txt

>basename /x/y/z/
z

It will bring z as output

Please note , inside a script if we use basename $0 , it will bring the name of the script. It has many uses.

dirname

dirname will bring the path of the directory. ie the prefix for / for a leave directory name or file.

For example:

>dirname /x/y/z/abc.txt
/x/y/z

The above command will bring output as /x/y/z

>dirname /x/y/z/
/x/y

It will bring /x/y as output

Comments

Popular posts from this blog

Excel : How to pad zeros

Today I got a requirement to format the number in excel cell - to left pad number with zeros.i find the following function very useful to do it. In case one to make the number left padded with "0" s give the formula =TEXT(A1,"0000") In case two even more enhanced form to make it left padded with "0" and add two decimal places give the formula as =TEXT(A2,"0000.00")

UNIX : How to get record count from zipped file

Sometimes we may need to get records count from file . For that we can use wc -l , command with file name. In some situation the file will be in compressed format . wc -l will not directly work with zipped files . In this case we can do zcat the file and pipe the word count command with it. Example : Let say we have a file cricketData.dat.gz To get word count from the file use : zcat cricketData.dat.gz | wc -l This will give the record count.

Mount an iso image in ubuntu using no GUI

We can easily mount an iso image file in our system to a directory in linux.We need not require an GUI application to do this.It is easy to do from the terminal itself. We use the mount command for that. The steps are as follows  1. Open the terminal in ubuntu (Shortcut press ctrl+Alt+t) 2. Create a directory to mount the iso image              $sudo mkdir /media/myimage 3. Then type the following command     $sudo modprobe loop 4.After that go to the location of the iso image file and type     $sudo mount /media/myimage -t iso9660 -0 loop     The iso file is mounted to the specified directory To unmount it give the command   sudo unmount /media/myimage That all.Cool isn't! sudo modprobe loop will loads the module for loopback file system iso9660 is the file system used by CD-ROM -t specify the file system type -o loop additional option used by a loopback filesystem