SELECT EVENT_OBJECT_TABLE
INTO @table_name
FROM INFORMATION_SCHEMA.TRIGGERS
WHERE TRIGGER_NAME = 'trigger_name';
2016年7月26日 星期二
MySQL 取得 trigger 作用的 table
MySQL 動態 SQL 範例
SET @tab = 'a';
SET @s = CONCAT('select * from ', @tab, ' where ID = 1');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
SET @s = CONCAT('select * from ', @tab, ' where ID = 1');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
2016年7月22日 星期五
bash lock file
echo "
exec 3<>\$0
while true; do sleep 1; done " >lock.sh
chmod a+x lock.sh
執行方式
lock.sh 不能透過 bash lock.sh
應用
同時只能執行一次的 script
exec 3<>\$0
while true; do sleep 1; done " >lock.sh
chmod a+x lock.sh
執行方式
lock.sh 不能透過 bash lock.sh
應用
同時只能執行一次的 script
2016年7月20日 星期三
bash ip int 轉換
function itoa { :;
echo -n $(($(($(($((${1}/256))/256))/256))%256)).;
echo -n $(($(($((${1}/256))/256))%256)).;
echo -n $(($((${1}/256))%256)).;
echo $((${1}%256));
};
itoa 3232235777
function atoi { :;
IPNUM=0;j=3;OIFS=$IFS;IFS='.';
for i in $1; do :;IPNUM=$(($IPNUM + $i*256**$j));j=$(($j-1));[ $j -lt 0 ] && break;done;
IFS=$OIFS;
echo $IPNUM;
};
atoi 192.168.1.1
echo -n $(($(($(($((${1}/256))/256))/256))%256)).;
echo -n $(($(($((${1}/256))/256))%256)).;
echo -n $(($((${1}/256))%256)).;
echo $((${1}%256));
};
itoa 3232235777
function atoi { :;
IPNUM=0;j=3;OIFS=$IFS;IFS='.';
for i in $1; do :;IPNUM=$(($IPNUM + $i*256**$j));j=$(($j-1));[ $j -lt 0 ] && break;done;
IFS=$OIFS;
echo $IPNUM;
};
atoi 192.168.1.1
2016年7月11日 星期一
bash whiptail範例
#!/bin/bash
DIALOG=/usr/bin/whiptail;
exec 3>&1;
a=$($DIALOG --inputbox "input yes or no" 10 40 2>&1 1>&3)
$DIALOG --msgbox $a 10 40
exec 3>&-
DIALOG=/usr/bin/whiptail;
exec 3>&1;
a=$($DIALOG --inputbox "input yes or no" 10 40 2>&1 1>&3)
$DIALOG --msgbox $a 10 40
exec 3>&-
2016年7月5日 星期二
bash tcp 傳輸檔案
接收資料
nc -l -p 2100 |gzip -d|cpio -i
發送資料
exec 3<>/dev/tcp/[dest host ip]/2100
find . |cpio -o |gzip >&3
exec 3<&-
exec 3>&-
GNU bash, version 3.2.25(1)-release
nc -l -p 2100 |gzip -d|cpio -i
發送資料
exec 3<>/dev/tcp/[dest host ip]/2100
find . |cpio -o |gzip >&3
exec 3<&-
exec 3>&-
GNU bash, version 3.2.25(1)-release
2016年7月2日 星期六
2016年7月1日 星期五
bash #檢查linux 核心是否大於等於 2.6.32 (devtmpfs 收錄版本)
#檢查是否大於等於 2.6.32 (devtmpfs 收錄版本)
:;function fun_is_kernel2.6.32 { :;
[ "$1" = "" ] && return 1;
local k=${1%-*};OIFS=$IFS;IFS='.';k=($k);IFS=$OIFS;
[ "${k[0]}" -gt 2 ] && return 0;[ "${k[0]}" -lt 2 ] && return 1;
[ "${k[1]}" = '' ] && return 1;[ "${k[1]}" -lt 6 ] && return 1;[ "${k[1]}" -gt 6 ] && return 0;
[ "${k[2]}" = '' ] && return 1;[ "${k[2]}" -lt 32 ] && return 1;
return 0;
};
:;function fun_is_kernel2.6.32 { :;
[ "$1" = "" ] && return 1;
local k=${1%-*};OIFS=$IFS;IFS='.';k=($k);IFS=$OIFS;
[ "${k[0]}" -gt 2 ] && return 0;[ "${k[0]}" -lt 2 ] && return 1;
[ "${k[1]}" = '' ] && return 1;[ "${k[1]}" -lt 6 ] && return 1;[ "${k[1]}" -gt 6 ] && return 0;
[ "${k[2]}" = '' ] && return 1;[ "${k[2]}" -lt 32 ] && return 1;
return 0;
};
訂閱:
文章 (Atom)