Category Archives: Linux & Unix

Linux Commands for Big Data Professionals

Linux Commands for Big Data Professionals

ls Command:
ls command is used to list down files.

a) List Files using ls with no option

[jmarun@jmarun BD]# ls

a.txt  b.txt

[jmarun@jmarun BD]#

b) List Files With option –l

[jmarun@localhost ~]$ ls -l

-rw-rw-r–. 1 jmarun jmarun    0 Feb 11 18:51 jmarun.txt

-rwxr-xr-x. 1 jmarun jmarun    0 Feb 12 18:22 diva.txt

[jmarun@localhost ~]$

c) View Hidden Files

List all files including hidden file starting with ‘.‘.

[jmarun@jmarun ~]$ ls -al

drwx——. 27 jmarun jmarun 4096 Feb 21 14:22 .

drwxr-xr-x.  3 root    root    4096 Feb 10 13:52 ..

-rw-rw-r–.  1 jmarun jmarun    0 Feb 11 18:51 jmarun.txt

-rwxr-xr-x.  1 jmarun jmarun    0 Feb 12 18:22 diva.txt

[jmarun@localhost ~]$

d) List Files with Human Readable Format with option -lh

    With combination of -lh option, shows sizes in human readable format.

[jmarun@localhost ~]$ ls -lh

-rw-rw-r–. 1 jmarun jmarun    0 Feb 12 18:25 d1.txt

-rw-rw-r–. 1 jmarun jmarun    0 Feb 12 18:25 d2.txt

[jmarun@localhost ~]$

e) List Files and Directories with ‘/’ Character at the end

Using -F option with ls command, will add the ‘/’ Character at the end each directory.

[jmarun@localhost ~]$ ls -F

d1.txt  Desktop/     diva.txt*   Downloads/  Pictures/  Templates/  xyz/

d2.txt  jmarun.txt  Documents/  Music/      Public/    Videos/

[jmarun@localhost ~]$

f) List Files in Reverse Order

The following command with ls -r option display files and directories in reverse order.
[jmarun@localhost ~]$ ls -r

xyz Templates  Pictures  Downloads  diva.txt Desktop  d1.txt Videos  Public jmarun.txt  d2.txt
[jmarun@localhost ~]$

g) Recursively list Sub-Directories

    ls -R option will list very long listing directory trees. See an example of output of the command.

[jmarun@localhost ~]$ ls -R

d1.txt  Desktop  diva.txt   Downloads  Pictures  Templates  xyz

h) Reverse Output Order

With combination of -ltr will shows latest modification file or directory date as last.

[jmarun@localhost ~]$ ls -ltr

drwxr-xr-x. 2 jmarun jmarun 4096 Feb 10 18:55 Templates

drwxr-xr-x. 2 jmarun jmarun 4096 Feb 10 18:55 Downloads

drwxr-xr-x. 2 jmarun jmarun 4096 Feb 10 18:55 Videos

drwxr-xr-x. 2 jmarun jmarun 4096 Feb 10 18:55 Public

i) Sort Files by File Size

With combination of -lS displays file size in order, will display big in size first.

[jmarun@localhost ~]$ ls -ls

0 -rw-rw-r–. 1 jmarun jmarun    0 Feb 12 18:25 d1.txt

0 -rw-rw-r–. 1 jmarun jmarun    0 Feb 12 18:25 d2.txt

4 drwxr-xr-x. 4 jmarun jmarun 4096 Feb 11 18:03 Desktop

0 -rw-rw-r–. 1 jmarun jmarun    0 Feb 11 18:51 jmarun.

j) Display Inode number of File or Directory

We can see some number printed before file / directory name. With -i options list file /directory with        inode number

[jmarun@localhost ~]$ ls -i

272870 d1.txt       272869 diva.txt   397175 Pictures   397282 xyz

272871 d2.txt       397173 Documents  397172 Public

k) Shows version of ls command

Check version of ls command.

[jmarun@localhost ~]$ ls –version

ls (GNU coreutils) 8.4

Copyright (C) 2010 Free Software Foundation, Inc

l) Show Help Page

List help page of ls command with their option.

[jmarun@localhost ~]$ ls –help

Usage: ls [OPTION]… [FILE]…

List information about the FILEs (the current directory by default).

Sort entries alphabetically if none of -cftuvSUX nor –sort.

m) List Directory Information

With ls -l command list files under directory /tmp. Wherein with -ld parameters displays information       of /tmp directory.

[jmarun@localhost ~]$ ls -l /

dr-xr-xr-x.   2 root root  4096 Feb 10 19:34 bin

dr-xr-xr-x.   5 root root  1024 Feb 10 13:52 boot

n) Display UID and GID of Files

  To display UID and GID of files and directories. use option -n with ls command.

[jmarun@localhost ~]$ ls -n

-rw-rw-r–. 1 500 500    0 Feb 12 18:25 d1.txt

-rw-rw-r–. 1 500 500    0 Feb 12 18:25 d2.txt

Copying with the cp Command
a) How do I copy files?
cp filename1 filename2 -> copies a file.

b) How do I copy recursively?    cp –r dir1 dir2

c) To see copy progress pass –v option to cp command.    cp  –v  –r  dir1 dir2

d) How do I confirm file overwriting?    cp –i dir1 dir2

e) Preserve the file permission and other attributes.
cp –p file1 file2

Deleting Files with the ‘rm’ Command

The rm command deletes the files.This command has several options,but should be used cautiously.
a) The rm command will delete one or several files from the command line.
rm file1
rm file1 file2 file3
b) One of the safer ways to use rm is through the -i or interactive option, where you’ll be asked if you want to delete the file.
rm -i file1
c) you can also force file deletion by using -f option 
rm -f file1
d) when we combine -f and -r, the recursive option , you can delete directories and all files or directories found.
rm -rf <directoryname>

Creating Directories with the ‘mkdir’ Command
The mkdir command can create one or several directories with a single command line.
a) Creating directories
mkdir <directoryName>
b) Creating multiple directories
mkdir <directoryName1> <directoryname2>
c) Creating Child under directories
mkdir temp/child
d) To build a hierarchy of directories with mkdir, you must use the -p,or parent option, for example
mkdir -p temp5/parent/child

Removing Directories with the ‘rmdir’ Command

a) The rmdir command is used to remove directories. To remove a directory, all you have to do is type

rmdir <DirectoryName>
b) Removing directories and sub directories as well
rm -rf

Renaming Files with the ‘mv’ command.
The mv command, called a rename command but know to many as a move command
a) Move the data file1 to file2 
mv <file1> <file2>
b) The mv command can work silently, or as with rm, you can use the -i (interactive) option 
mv -i <file1> <file2>

Creating Hard and Symbolic Links with the ‘ln’ Command
The ln command creates both types of links.If you use the ln command to create a hard link, you specify a second file on the command line you can use to reference the original file,for Ex
# ln file1 file2
#ln -s file1 file 2

ps command: The ps command will show information about current system process.

Ps-> The user’s currently running processes.

Ps –f -> Full listing of the user’s currently running process.

ps –ef -> Full listing of all process, except kernel process.

Ps –A -> All process, including kernel process.

Ps auxw -> wide listing sorted by percentage of CPU usage.

Last: The last command shows the history of who has logged in to the system since the wtmp file was created.

Who: The who command gives this output for each logged-in user: username,tty .login time and where the user logged in from.

W: The W command is really an extended who

Checking your installation Files

rpm –qa | grep ^x

you should receive the output similar to the following..

xorg-x11-drv-apm-1.2.2-1.1.el6.x86_64

xorg-x11-drv-penmount-1.4.0-5.el6.x86_64

xorg-x11-drv-ast-0.89.9-1.1.el6.x86_64

xorg-x11-drv-aiptek-1.3.0-2.el6.x86_64

Installing the X Files

rpm –ivh <filename>

Moving to different directories with the cd command.

cd /usr/bin

cd ..

cd ../..

cd or cd –

Knowing where you are with the pwd command.

pwd

pwd –help

/bin/pwd   –help

Searching directories for matching files with the find command

Syntax: find where-to-look criteria what-to-do

Find /usr –name spell –print

Listing and Combining Files with the cat Command

The cat (Concatenate file) commands are used to send the contents of files to your screen.

a) cat a.txt

[abc@master]$ cat a.txt

Hello Hello Hello

Hello hello hello

[abc@master]$

b) The cat command also has a number of options. If you’d like to see your file with line numbers, you can use the n-option

#cat –n  a.txt

1  Hello Hello Hello

2  Hello hello hello

c) You can also use cat to look at several files at once.

# cat –n  test*

1  Hello Hello Hello

2  Hello hello hello

[root@localhost ~]# cat a.txt

aksjlkdj

[root@localhost ~]#

[root@localhost ~]# cat b.txt

alksjdjkjaskjkaj

;lajslkdjja

lkashdjfajs

[root@localhost ~]#

d) As you can see, cat has also include a second file in its output.

[root@localhost ~]# cat a.txt b.txt

aksjlkdj

alksjdjkjaskjkaj

;lajslkdjja

lkashdjfajs

[root@localhost ~]#

cat > c.txt
e) To see the numbers using cat
# cat -n jmarun.txt
100     jmarun 20000
200     diiia   10000
399     ksjjkj  30999[

Reading the files with the ‘more’ command

[root@localhost ~]# more c.txt

kajslkj

lkasjdkfjjs

klakjshkdjfhkahs

[root@localhost ~]#

Browsing Files with the ‘less’ command.

less c.txt

Reading the Beginning or End of Files with the head and tail Commands.

head -5 /usr/man/man.txt

head -5 –q /usr/man/man.txt

tail -12 /var/log/message/a.txt

The more command is one of a family of Linux commands called pagers.

Creating Files with the ‘touch’ Command

The touch command is easy to use, and generally, there are two reasons to use it .The first reason is to create a file, and the second is to update a file’s modification date.

a) To create a file with touch,use

# touch newfile

#ls –l newfile

-rw-r–r– 1 jmarun jmarun 0 Feb 21 14:12 newfile

b) To Change time stamp

# touch –t 1225110099 newfile2

Trap: when the program is terminated before it would normal end, we can catch an exit signal.

0-      Normal termination, end of script.

1-SIGHUP -> hang up, line disconnected

2-singint-> terminal interrupts, usually ctrl+c

3- SIGQUIT -> Quit Key, Child process to die before terminating.

9-SIGKILL->kill -9 commands can’t trap this type of exit status.

15-SIGTERM  àkill command’s default action.

19-SIGSTOP->stop, usually ctrl+z

17 -> dintfunc

Ex: Kill –9 <ps Id>

df -> Report how much free disk space is available for each mount you have.

df –a  –all -> include dummy file system.

df –B  100, –block-size=SIZE -> use SIZE –byte blocks

df –h ->human readable àprint sizes in human readable format.

df –I -> list inode information instead of block usage.

Df –k -> like  –block –Size =1 k.

df –T ->Print file System Type.

du -> disk usage

du ->tells you how much disk space a file occupies.

du –a ->display  the space that each file is taking up.

Du –h -> which can make the output easier to read by displaying it in KB /M/G.

Du –sh -> The -s (for suppress or summarize) option tells du to report only the total disk space occupied by a directory tree and to suppress individual reports for its subdirectories

top àdisplays top CPU process.

The top program provides a dynamic real-time view of a running system.

Uname

Free -> displays information about free and used memory on the system.

-b,-k,-m,-g show output in bytes, KB, MB, or GB

-l show detailed low and high memory statistics

-o use old format (no -/+buffers/cache line)

-t display total for RAM + swap

-s update every [delay] seconds

-c update [count] times

-V display version information and exit

awk-> The awk command is powerful method for processing or analyzing text files,in particulat data files that are organized by lines (rows) and cloumns.

How to add user:

Useradd div  –to add user Id

Passwd div –to set password

Set Account disable date:

useradd -e {yyyy-mm-dd} {username}
useradd -e 2008-12-31 jerry

Set default password expiry:

useradd -f {days} {username}
useradd -e 2009-12-31 -f 30 jerry

How Can I see the entire users list on Linux Server?

cat /etc/passwd

Vim /etc/passwd

cat /etc/passwd | grep home | cut -d’:’ -f1

How to convert you as root, create new user and setting password.
[jmarun@localhost Desktop]$ su root

Password: <give your user passwd>

[root@localhost Desktop]# useradd diva1

[root@localhost Desktop]# passwd diva1

Changing password for user diva1.

New password:

BAD PASSWORD: it is too short

BAD PASSWORD: is too simple

Retype new password:

passwd: all authentication tokens updated successfully.

[root@localhost Desktop]#

How to add user in sudo list.

Go to vi /etc/sudoers

## Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

jmarun   ALL=(ALL)   ALL

Man ->

Find files with the whereis command.

Whereis find

You can also use whereis to find only the binary version of the program with

Whereis –b find

If whereis cann’t find your request , you’ll get an empty return string, for example

Whreis foo

It will search in entire system.

Not limiting searches to known directories such as /usr/man, /usr/bin, or /usr/sbin can speed up the task of finding files.

Although whereis is faster than using find to locate programs or manual pages.

Locate is faster than whereis

Locating files with locate command.

Finding a file using locate is much faster than the find command because locate will go directly to the database file,find any matching filenames, and print its results.

Locate *.ps

Locate resides in /var/lib

Moving different directories with cd command.

cd or

cd ../.. or

cd or cd –

Knowing where you are wit pwd command.

Go to /user/local and type pwd to know your directory.

ps -ef | grep aneel

pkill -f

Link while copying the data?

cp –i test 1 test2

Getting command Summaries with whatis and apropos

Specifying other directories with ls

# ls /usr/bin

Listing Directories with the dir and vdir commands

#dir :-> this command works like the default ls command,listing the files in sorted columns

Vdir -> The vdir command works like the ls –l option, and presents a long format listing by default,

Graphic Directory listings with the tree command

# tree /var/lib

# tree –d /usr/local/netscape/

Search Inside Files with the ‘grep’ Command
grep command will help to search any words in file
Ex: cat hive.log | grep loaded [Here we are searching loaded files in log]

Compressing files with the ‘gzip’ command
# gzip file.tar

Compressing Files with the ‘compress’ Command
#compress file

To uncompress a file,use
# uncompress file.Z

Running Programs in the Background
# nohup ./jmarun.sh &

Checking the Connection
Using the ‘ipconfig’ Command, This Command will help to identify the IP address of your system
# ifconfig
[jmarun@localhost ~]$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:7F:24:89
inet addr:192.168.64.130  Bcast:192.168.64.255  Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe7f:2489/64 Scope:Link

Using the ‘netstat’ Command
The netstat command is the definitive command for checking your network activity,connections,routing tables,and other network messages and statistics.
# netstat

Using the ping Command
# ping <hostname>.com

Find Hostname of the System
#hostname

How to replace One word with another word in vi:
:%s/old-text/new-text/g