Monday, November 23, 2020

Unix/linux: parameter now, 1 hour ago, 2 hours ago


getdatenow=`date +%Y/%m/%d" "%H`

getdate1hago=`date --date="1 hour ago" +%Y/%m/%d" "%H`

getdate2hago=`date --date="2 hour ago" +%Y/%m/%d" "%H`

getdate3hago=`date --date="3 hour ago" +%Y/%m/%d" "%H` 

Unix/linux: how to arithmetic in /bin/sh and grep log based on last hours event happened

 

# calculator

y0=0

y1=0

y2=0

y3=0

t0=0

t1=0

t2=0

t3=0


getdatenow=`date +%Y/%m/%d" "%H`

getdate1hago=`date --date="1 hour ago" +%Y/%m/%d" "%H`

getdate2hago=`date --date="2 hour ago" +%Y/%m/%d" "%H`

getdate3hago=`date --date="3 hour ago" +%Y/%m/%d" "%H`


# processing today loga

y0=`grep "unable to send message to peer," /logs/UL_$yesterday\_*| grep "$getdatenow" | wc -l`

y1=`grep "unable to send message to peer," /logs/UL_$yesterday\_*| grep "$getdate1hago" | wc -l`

y2=`grep "unable to send message to peer," /logs/UL_$yesterday\_*| grep "$getdate2hago" | wc -l`

y3=`grep "unable to send message to peer," /logs/UL_$yesterday\_*| grep "$getdate3hago" | wc -l`


# processing today loga


t0=`grep "unable to send message to peer," /logs/UL_$getdate\_*| grep "$getdatenow" | wc -l`

t1=`grep "unable to send message to peer," /logs/UL_$getdate\_*| grep "$getdate1hago" | wc -l`

t2=`grep "unable to send message to peer," /logs/UL_$getdate\_*| grep "$getdate2hago" | wc -l`

t3=`grep "unable to send message to peer," /logs/UL_$getdate\_*| grep "$getdate3hago" | wc -l`

NUMBER_ERROR_DETECTED=`expr "$y0 + $y1 + $y2 + $y3 + $t0 + $t1 + $t2 + $t3" | bc`



echo $NUMBER_ERROR_DETECTED

Friday, March 2, 2018

UNIX: check CPU usage and disk usage

Script to check cpu usage

grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}'

#!/bin/bash

limit=2
email_destination="whatever@gmail.com"
email_body="WARNING the CPU usage on server `hostname` exceeded the limit you set ($limit)%"
email_subject="WARNING cpu usage"

usage=`grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}' | bc`

if echo $usage $limit | awk '{exit $1>$2?0:1}'
then
  echo -e $email_body | mail -s "$email_subject" $email_destination
  #echo 'alarm'
fi
_____________________________________________________

Disk space not updating in linux df -h after deleted files

ls -ld /proc/*/fd/* 2>&1 | fgrep '(deleted)'


restart the process that hold it

UNIX: sum and print total content of file

$ cat tpsCCRT.txt | awk '{sum+=$1} END {print "Count: ",NR;print "Avg :",sum/NR}'
Count:  1441
Avg : 15.6232
$

LinuxL Find file with certain permission


[root]# ls -l `find . -type f ! -perm 0755`
-rw-rw-r-- 1 root root    32550 Jan 18 14:20 ./centric_crm_tools-5.0.jar
-rw-rw-r-- 1 root root     8917 Jan 18 14:20 ./centric-troubleticketer-21.0.3.jar
-rw-rw-r-- 1 root root    10725 Jan 18 13:50 ./jdhcp-1.2.0.jar
-rw-rw-r-- 1 root root   228516 Jan 18 13:41 ./jradius-core-1.1.5.jar
-rw-rw-r-- 1 root root  4788404 Jan 18 13:41 ./jradius-dictionary-1.1.5.jar
-rw-r--r-- 1 root root    18289 Jan 18 13:51 ./opennms-alarm-northbounder-jms-21.0.3.jar
-rw-rw-r-- 1 root root    50911 Jan 18 13:51 ./opennms-dns-provisioning-adapter-21.0.3.jar
-rw-rw-r-- 1 root root    45429 Jan 18 13:49 ./opennms-integration-otrs-21.0.3.jar
-rw-rw-r-- 1 root root    60857 Jan 18 13:49 ./opennms-integration-otrs-31-21.0.3.jar
-rw-rw-r-- 1 root root     6037 Jan 18 13:49 ./opennms-integration-otrs-common-21.0.3.jar
-rw-rw-r-- 1 root root     7792 Jan 18 13:49 ./opennms-integration-rt-21.0.3.jar
-rw-r--r-- 1 root root 35841272 Jan 18 14:02 ./opennms_jmx_config_generator.jar
-rw-rw-r-- 1 root root   368488 Jan 18 13:51 ./opennms-rancid-provisioning-adapter-21.0.3.jar
-rw-rw-r-- 1 root root    49068 Jan 18 13:51 ./opennms-reverse-dns-provisioning-adapter-21.0.3.jar
-rw-rw-r-- 1 root root    54680 Jan 18 13:51 ./opennms-snmp-asset-provisioning-adapter-21.0.3.jar
-rw-rw-r-- 1 root root    55477 Jan 18 13:51 ./opennms-snmp-hardware-inventory-provisioning-adapter-21.0.3.jar
-rw-rw-r-- 1 root root    11951 Jan 18 13:51 ./opennms-vtdxml-collector-handler-21.0.3.jar
-rw-rw-r-- 1 root root  1871026 Jan 18 13:41 ./org.opennms.dependencies.jradius-extended-21.0.3.jar
-rw-rw-r-- 1 root root    22018 Jan 18 13:47 ./org.opennms.features.juniper-tca-collector-21.0.3.jar
-rw-r--r-- 1 root root    23005 Jan 18 13:50 ./org.opennms.features.ncs.ncs-drools-21.0.3.jar
-rw-r--r-- 1 root root    19288 Jan 18 13:50 ./org.opennms.features.ncs.ncs-northbounder-21.0.3.jar
-rw-r--r-- 1 root root    25031 Jan 18 13:45 ./org.opennms.features.ncs.ncs-persistence-21.0.3.jar
-rw-rw-r-- 1 root root     9602 Jan 18 13:51 ./org.opennms.protocols.cifs-21.0.3.jar
-rw-rw-r-- 1 root root    41591 Jan 18 13:50 ./org.opennms.protocols.dhcp-21.0.3.jar
-rw-rw-r-- 1 root root    63485 Jan 18 13:50 ./org.opennms.protocols.nsclient-21.0.3.jar
-rw-rw-r-- 1 root root    25416 Jan 18 13:50 ./org.opennms.protocols.radius-21.0.3.jar
-rw-rw-r-- 1 root root    47068 Jan 18 13:50 ./org.opennms.protocols.xmp-21.0.3.jar
-rw-rw-r-- 1 root root   637560 Jan 18 13:51 ./vtd-xml-2.11.jar
-rw-rw-r-- 1 root root    88198 Jan 18 13:50 ./xmp-1.40.jar
[root]#

Friday, May 26, 2017

Unix: Find list of files in gz format contain strings

$ find . -name "*.gz" -exec zgrep -la bbarney03@xxxx.com \{\} \;
./aaa_1/231_20160606193002_232895_330_20160606_231655_1_0000_01.act.gz
./aaa_1/231_20160606173001_604598_330_20160606_211628_1_0000_01.act.gz
./aaa_1/232_20160606191508_769207_935_20160606_230502_1_0000.act.gz
./aaa_1/232_20160606191600_522897_329_20160606_230518_1_0000.act.gz
./aaa_1/232_20160606160002_239869_935_20160606_194946_1_0000.act.gz
./aaa_1/232_20160606094601_736357_329_20160606_133804_1_0000.act.gz
./aaa_1/232_20160606103002_77028_935_20160606_141917_1_0000.act.gz
./aaa_1/231_20160606113107_109722_840_20160606_152107_1_0000.act.gz
./aaa_1/231_20160606120002_183644_330_20160606_154014_1_0000_03.act.gz
./aaa_1/231_20160606094501_813187_330_20160606_133446_1_0000_00.act.gz
./aaa_1/232_20160606114501_577769_935_20160606_153424_1_0000.act.gz
./aaa_1/232_20160606104600_643312_329_20160606_143819_1_0000.act.gz
./aaa_1/232_20160606103107_699907_837_20160606_141919_1_0000.act.gz
./aaa_1/231_20160606120019_863535_330_20160606_154515_1_0000_01.act.gz
./aaa_1/232_20160606094701_251538_329_20160606_133804_1_0000_03.act.gz
./aaa_1/232_20160606153002_294217_935_20160606_191943_1_0000.act.gz
./aaa_1/232_20160606160107_988588_837_20160606_194949_1_0000.act.gz
./aaa_1/232_20160606160102_442949_329_20160606_195433_1_0000.act.gz
./aaa_1/232_20160606114603_483834_837_20160606_153426_1_0000.act.gz
./aaa_1/231_20160606153002_218144_330_20160606_191602_1_0000_02.act.gz

$ zgrep -i bbarney03@xxxx.com 231_20160609122102_492219_840_20160609_160748_1_0000.act.gz

$ zgrep -la bbarney03@sxxxxcom 231_20160609122102_492219_840_20160609_160748_1_0000.act.gz

find . -name "*.gz" -exec zgrep -la 8434763502 \{\} \;
find . -name "*.gz" -exec zgrep -la 50495939382 \{\} \;

Wednesday, May 28, 2014

Linux: find hba information

-bash-3.2$ nsu
Password:
[root@redhat ~]# cd /opt/hp
[root@redhat hp]# ls
hpdiags        hp-ilo       hpsmh             hpssa
hp_fibreutils  hpmouse      hp-smh-templates  hpssacli
hp-health      hp-OpenIPMI  hp-snmp-agents
[root@redhat hp]# cd hp_fibreutils
[root@redhat hp_fibreutils]# ls
adapter_info  hp_rescan  lssd  lssg  scsi_info
[root@redhat hp_fibreutils]# ./hp_rescan -h
NAME

hp_rescan

DESCRIPTION

Sends the rescan signal to all or selected Fibre Channel HBAs/CNAs.

OPTIONS

-a, --all      - Rescan all Fibre Channel HBAs
-h, --help     - Prints this help message
-i, --instance - Rescan a particular instance
-l, --list     - List all supported Fibre Channel HBAs
[root@redhat hp_fibreutils]# ./hp_rescan -l
QLogic adapters:

/sys/class/scsi_host/1
/sys/class/scsi_host/2

Emulex adapters:


Brocade adapters:

[root@redhat hp_fibreutils]# cd /sys/class/scsi_host
[root@redhat scsi_host]# ls
host0  host1  host2
[root@redhat scsi_host]# ls -la
total 0
drwxr-xr-x  5 root root 0 May 23 14:25 .
drwxr-xr-x 43 root root 0 May 23 14:26 ..
drwxr-xr-x  2 root root 0 May 26 11:13 host0
drwxr-xr-x  2 root root 0 May 26 11:13 host1
drwxr-xr-x  2 root root 0 May 26 11:13 host2
[root@redhat scsi_host]# cd host1
[root@redhat host1]# ls
84xx_fw_version   model_desc            state
beacon            model_name            subsystem
cmd_per_lun       mpi_version           total_isp_aborts
device            npiv_vports_inuse     uevent
driver_version    optrom_bios_version   unchecked_isa_dma
fabric_param      optrom_efi_version    unique_id
flash_block_size  optrom_fcode_version  vlan_id
fw_dump_size      optrom_fw_version     vn_port_mac_address
fw_state          pci_info              vport_create
fw_version        phy_version           vport_delete
host_busy         proc_name             zio
isp_id            scan                  zio_timer
isp_name          serial_num
max_npiv_vports   sg_tablesize
[root@redhat host1]# more driver_version
8.04.00.12.5.6-k2
[root@redhat host1]# more model_name
QMH2462
[root@redhat host1]#

UNIX: How to print column nicely using printf

[user@hostfwnms1-oam tmp]# cat b.sh printf "%-26s %-19s %-8s %-8s %-s %-s\n" HOSTNAME IP PING SNMPWALK 0-ok 1-fail for i in `cat n...