24 Sept 2013

Linux Commands

BASIC LINUX COMMANDS
1)      To get the list of files
#ls
2)      To get list of files with the time stamp
#ls –lrt
3)      To remove a file
#rm –r filename
4)      To remove a folder
#rm –rf
5)      To change a file name
#chown –R
6)      To give read and write permissions
#chmod –R 777 /usr
7)      To know the size of the particular directory
#du –sg filename or directoryname (it will display in giga bytes) (or)
#du –sk filename or dirctoryname( it will display In kilobytes)
8)      To know disk space in GB & KB
#df –g     OR      #df -gt
#df –k     OR      #df -k
9)      To know system is 32 bit or 64 bit os
# bootinfo –Y
10)   To display how many processors does my system have
#lscfg | grep proc
11)   How many hard disks does my system have and which one are in use
#lspv or
#lspv –l
#lspv –p
12)   To know information about a specific physical volume or disk
#lspv hdisk1
13)   To know detailed configuration of my system in linux?
#lscfg
#lscfg –v
#lscfg –vl
14)   To know system information
#nmon
15)   To check CPU performance in linux and AIX
#top        ( in liunx)
#topas     ( in AIX)
16)   To know ip address of amachine in windows and linux
#ifconfig  -a      (in linux)
#ipconfig –a      ( in windows)
17)   To know network status
#netstat
18)   To display the name of the current system I,e linux or unix
#uname
19)   Report virtual memory statistics
#vmstat
20)   Get the s/m uptime, s/m load average
#uptime
21)   To set environment variables
#setenv
22)   Print last few lines in a file
#tail
23)   To change ownership change file/directory  owner
#chown newowner filename      ----------Change file/directory owner
#chgrp new group filename       -----------Change file/directory group
#chown newowner.newgroup filename
24)   To create a group
#mk group groupname  -----------To create group
#rm group groupname   -----------To remove group name
25)   To know current user
#whoami    It displays current user
#who           Displays details of all users currently logged in
#who –b     Displays system reboot time
#uptime     Displays number of users logged in time, since last time reboot and mach load avg
#lsuser all        Displays list of all user datails
#lsuser root    List details of all users
#w                     It shows what logged users are doing

----------------------------------------------------------------------------------------------------------------------------

Scheduling Scripts using crontab:


#crontab  –l                      (It Lists out crontab entrys)
#crontab  –e                      (Using this we can create or Edit crontab entries)
#crontab  –l>filename             (O/P crontab entrys to a file)
#crontab filename                 (Enter a crontab from a file)
#crontab  –r                      ( Removes all crontab entries)
#crontab  –v                      ( Display crontab submission true)


oracle@nabdcdb/home/oracle#crontab -l
## Cronjob runs on every Sunday at 5AM morning and gather stats of NABADM schema ##
0 5 * * 0 /home/oracle/working/scripts/NABADM_Gather_Stats.sh

Ex: This script will run 0-zeroth minute, 5-at 5 AM, *-every day,*-every month,0-every sunday(This will run on every sunday at 5 AM)

## Crontab runs every day at 11PM and delete Archive log older than 5 days ##
0 23 * * * /home/oracle/working/scripts/Del_Archivelog.sh

Ex:This script will run 0-zeroth minute, 23-at 11 PM, *-every day,*-every month,*-every week

Easy to remember format:
---------------------------------------

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

Note: If you wished to have a script named /home/oracle/working/scripts/Del_Archivelog.sh 
run every day at 11 PM, your crontab entry would look like as follows. First, install your cronjob by running the following command:

# crontab -e

Append the following entry:

0 23 * * * /home/oracle/working/scripts/Del_Archivelog.sh 
 
-----------------------------------------------------------------------------------
Vi commands 

#vi filename    --------To  open filename
          Esc  i                             for insert
          Esc r                             for replace
          Esc x                               for delete
          Esc dd                            for  deleting entire line
          :q                                    for  quit without saving
          :wq                                 for saving the file


  To dispaly current using port  numbers in the server

Netstat:Its a command prompt command used to display very detailed information about how your computer is communicating with other computers or network devices.
The netstat command displays information regarding traffic on the configured network interfaces such as following:
(a) The address of any protocol control blocks associated with the sockets and the state of all sockets.
(b) The number of packets received,transmitted, and dropped in the communications susbsystems.
(c) Cumulative statistics per interface
(d) Routes and their status

            #netstat -ant
            #netstat -an |pg              ----To display current port numbers page wise
            #netstat -y                     ----It displays tree commands of netstat

To find files larger than 100MB:

find . -type f -size +100M
35 Practical Examples of Linux Find Command:

1. Find Files Using Name in Current Directory
Find all the files whose name is tecmint.txt in a current working directory.
# find . -name tecmint.txt
./tecmint.txt
2. Find Files Under Home Directory
Find all the files under /home directory with name tecmint.txt.
# find /home -name tecmint.txt
/home/tecmint.txt
3. Find Files Using Name and Ignoring Case
Find all the files whose name is tecmint.txt and contains both capital and small letters in /home directory.
# find /home -iname tecmint.txt
./tecmint.txt
./Tecmint.txt
4. Find Directories Using Name
Find all directories whose name is Tecmint in / directory.
# find / -type d -name Tecmint
/Tecmint
5. Find PHP Files Using Name
Find all php files whose name is tecmint.php in a current working directory.
# find . -type f -name tecmint.php
./tecmint.php
6. Find all PHP Files in Directory
Find all php files in a directory.
# find . -type f -name "*.php"
./tecmint.php
./login.php
./index.php
Part II – Find Files Based on their Permissions:

7. Find Files With 777 Permissions
Find all the files whose permissions are 777.
# find . -type f -perm 0777 -print
8. Find Files Without 777 Permissions
Find all the files without permission 777.
# find / -type f ! -perm 777
9. Find SGID Files with 644 Permissions
Find all the SGID bit files whose permissions set to 644.
# find / -perm 2644
10. Find Sticky Bit Files with 551 Permissions
Find all the Sticky Bit set files whose permission are 551.
# find / -perm 1551
11. Find SUID Files
Find all SUID set files.
# find / -perm /u=s
12. Find SGID Files
Find all SGID set files.
# find / -perm /g+s
13. Find Read Only Files
Find all Read Only files.
# find / -perm /u=r
14. Find Executable Files
Find all Executable files.
# find / -perm /a=x
15. Find Files with 777 Permissions and Chmod to 644
Find all 777 permission files and use chmod command to set permissions to 644.
# find / -type f -perm 0777 -print -exec chmod 644 {} \;
16. Find Directories with 777 Permissions and Chmod to 755
Find all 777 permission directories and use chmod command to set permissions to 755.
# find / -type d -perm 777 -print -exec chmod 755 {} \;
17. Find and remove single File
To find a single file called tecmint.txt and remove it.
# find . -type f -name "tecmint.txt" -exec rm -f {} \;
18. Find and remove Multiple File
To find and remove multiple files such as .mp3 or .txt, then use.
# find . -type f -name "*.txt" -exec rm -f {} \;

OR

# find . -type f -name "*.mp3" -exec rm -f {} \;
19. Find all Empty Files
To file all empty files under certain path.
# find /tmp -type f -empty
20. Find all Empty Directories
To file all empty directories under certain path.
# find /tmp -type d -empty
21. File all Hidden Files
To find all hidden files, use below command.
# find /tmp -type f -name ".*"
Part III – Search Files Based On Owners and Groups
22. Find Single File Based on User
To find all or single file called tecmint.txt under / root directory of owner root.
# find / -user root -name tecmint.txt
23. Find all Files Based on User
To find all files that belongs to user Tecmint under /home directory.
# find /home -user tecmint
24. Find all Files Based on Group
To find all files that belongs to group Developer under /home directory.
# find /home -group developer
25. Find Particular Files of User
To find all .txt files of user Tecmint under /home directory.
# find /home -user tecmint -iname "*.txt"
Part IV – Find Files and Directories Based on Date and Time
26. Find Last 50 Days Modified Files
To find all the files which are modified 50 days back.
# find / -mtime 50
27. Find Last 50 Days Accessed Files
To find all the files which are accessed 50 days back.
# find / -atime 50
28. Find Last 50-100 Days Modified Files
To find all the files which are modified more than 50 days back and less than 100 days.
# find / -mtime +50 –mtime -100
29. Find Changed Files in Last 1 Hour
To find all the files which are changed in last 1 hour.
# find / -cmin -60
30. Find Modified Files in Last 1 Hour
To find all the files which are modified in last 1 hour.
# find / -mmin -60
31. Find Accessed Files in Last 1 Hour
To find all the files which are accessed in last 1 hour.
# find / -amin -60
Part V – Find Files and Directories Based on Size
32. Find 50MB Files
To find all 50MB files, use.
# find / -size 50M
33. Find Size between 50MB – 100MB
To find all the files which are greater than 50MB and less than 100MB.
# find / -size +50M -size -100M
34. Find and Delete 100MB Files
To find all 100MB files and delete them using one single command.
# find / -size +100M -exec rm -rf {} \;
35. Find Specific Files and Delete
Find all .mp3 files with more than 10MB and delete them using one single command.

# find / -type f -name *.mp3 -size +10M -exec ls -l {} \;

No comments:

Post a Comment