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

Pokemon Go download link

Pokemon go has become the buzz word in tech industry now. Nintendo, the Japanese video game company are the creates of this game. Its first of it kind to integrate a game with augmented reality , so people has to go out to real world with there android or iPhone to catch em all . You can download  Pokemon go  from this link. 

UNIX : How to ignore lines with certain names

Sometimes we need to ignore multiple lines with certain words and get the list out of the file. usually it will be a log file to read . The below grep command can be used to ignore multiple words present in a text file. Lets say the file contain $ cat list.txt apple orange apple banana papaya Now we need to ignore line with orange , banana and papaya . So we can use the below grep command. $ cat list.txt | grep -Ev "orange|banana|papaya" apple apple It will ignore lines with the words in -v part of grep.