[VMware][ESXi][crontab] 移除特定日期以前的目錄或映像檔資料

No Comments

#!/usr/bin/expect
spawn ssh "root@ip-or-hostname"
expect "*assword: "
send -- "your-password\n"
expect "\[root@ip-or-hostname:~\] "
#send -- "hostname\n"
#send -- "/bin/sh /vmfs/volumes/datastore1/ghettoVCB/bin/ghettoVCB.sh -g /vmfs/volumes/datastore1/ghettoVCB/backup.conf -m vmguest-name\n"

send -- "echo \"Processing vmguest-name archives\"\n"
send -- "cd /vmfs/volumes/vm-bak/vmguest-name\n"
send -- "ls -t | grep -v `date -D %s +\"%Y-%m-%d\" -d \$((\$( date +%s) - 0 ))`  | grep -v `date -D %s +\"%Y-%m-%d\" -d \$((\$( date +%s) -86400 ))` | grep -v `date -D %s +\"%Y-%m-%d\" -d \$((\$( date +%s) - 172800 ))` > list2del.txt\n"
send -- "cat list2del.txt\n"
send -- "rm -rf `cat list2del.txt`\n"
send -- "rm -f list2del.txt\n"

expect eof

[programming][bash] SMBv1 檢測程式

No Comments

#!/bin/bash
class=$1
if [ -z $1 ]; then
        echo "No Network Set"
        exit 0
else
        cd /opt/scripts/SMBv1
        for classC in $(seq 0 255)
        do
                # set LAN range to check
                classc="$1"."$classC"
                network2check=`echo $classc.0\/24`

                # build check list, list the ip is opened port 445
                # 建議用其他程式取得, 開啟445的IP, 用nmap 太傷
                echo $network2check
                /bin/bash /opt/scripts/SMBv1/checking-ip2check.sh $network2check
                #lan2check=`echo $classc.0`
                list2check=`echo "$classc".0_slash_24-alive-ip.list`

                # check ip from list if it/them has/have smbv1 issue
                if [ -s "$list2check" ]; then
                        /bin/bash /opt/scripts/SMBv1/checking-smbv1-devices-need-iplist.sh $list2check
                else
                        #echo "No Host to check." > $list2check
                        rm -f $list2check
                fi

                # wait 2 mins, then run the next round
                echo "sleep for 1 seconds..."
                sleep 1

        done
        # set header
        sed -i -e 's/,,,/IP,OS Version,NetBIOS,FQDN/' ./data/*.csv
        exit 0
fi

[SMBv1] check-smbv1-all.sh

No Comments

#!/bin/bash
class=$1
if [ -z $1 ]; then
        echo "No Network Set"
        exit 0
else
        cd /opt/scripts/SMBv1
        for classC in $(seq 0 255)
        do
                # set LAN range to check
                classc="$1"."$classC"
                network2check=`echo $classc.0\/24`

                # build check list, list the ip is opened port 445
                # 建議用其他程式取得, 開啟445的IP, 用nmap 太傷
                echo $network2check
                /bin/bash /opt/scripts/SMBv1/checking-ip2check.sh $network2check
                #lan2check=`echo $classc.0`
                list2check=`echo "$classc".0_slash_24-alive-ip.list`

                # check ip from list if it/them has/have smbv1 issue
                if [ -s "$list2check" ]; then
                        /bin/bash /opt/scripts/SMBv1/checking-smbv1-devices-need-iplist.sh $list2check
                else
                        #echo "No Host to check." > $list2check
                        rm -f $list2check
                fi

                # wait 2 mins, then run the next round
                echo "sleep for 1 seconds..."
                sleep 1

        done
        # set header
        sed -i -e 's/,,,/IP,OS Version,NetBIOS,FQDN/' ./data/*.csv
        exit 0
fi

關於 \r\n 以及^M 的一些事

No Comments

在 vim 環境下, 顯示出 ^M 符號
https://superuser.com/questions/97692/vim-show-line-feeds-carriage-return

【轉貼】\r\n和\n的差異
http://seacatcry.pixnet.net/blog/post/13732061

去除文件裡的 ^M 特殊符號

No Comments

一般 ^M 符號是出現在每行的最後
這時可利用 dos2unix 指令來解決會比較簡單

但偶有情況是出現在行中, 而不是在行尾/行末
這時 dos2unix 就會處理不到

這時要改用以下網頁的方法

http://dragonspring.pixnet.net/blog/post/33146613

sed  "s/\r//" dos_file  > dos_file_linux

或是

tr -d "\r" < dos_file  > dos_file_linux