1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
| #/bin/bash
# LY
# ------------------
# Copyright 2016.04.15 LingYi (lydygly@163.com) QQ:1519952564
#eg: chipf IP
chipf()
{
[[ -n $(echo $1 | tr -d '[0-9.]') ]] && return 1
[[ $( echo $1 | grep -o '.' | wc -l) -ne 3 ]] && return 2
local i j n
for ((i=1; i<5; i++)); do
j=$(echo $1 | awk -F. '{print $num }' num=$i)
[[ ${#j} -ne 1 ]] && [[ ${j:0:1} -eq 0 ]] && return 3
[[ -z $j ]] || [[ $j -gt 254 ]] && return 4
[[ $i -eq 1 ]] && [[ ${j:0:1} -eq 0 ]] && return 5
done
return 0
}
#chmaskf MASK
chmaskf()
{
[[ -n $(echo $1 | tr -d '[0-9.]') ]] && return 1
[[ $( echo $1 | grep -o '.' | wc -l) -ne 3 ]] && return 2
local i j n
for ((i=1; i<5; i++)); do
j=$(echo $1 | awk -F. '{print $n }' n=$i)
[[ ${#j} -ne 1 ]] && [[ ${j:0:1} -eq 0 ]] && return 3
[[ -z $j ]] && return 4
echo '0 128 192 224 240 248 252 254 255' | grep -qw $j || return 5
if [[ $j -ne 255 ]] && [[ $i -ne 4 ]]; then
[[ $(echo $1 | awk -F. '{print $n}' n=$((i+1))) -ne 0 ]] && return 6
fi
done
return 0
}
#eg: randomn 10
#eg: randomn 10 'a b c 1 2 3 + - , . < >'
randomn()
{
local i Array
[[ $# -eq 2 ]] && Array=( $2 ) || {
Array=( 1 2 3 4 5 6 7 8 9 0
a b c d e f g h i g k l m n o k p r s t u v w x y z
A B C D E F G H I G K L M N O P K R S T U V W X Y X
@ ! ~ $ + - = . )
}
for (( i=1; i<=$1; i++ )); do
echo -n ${Array[$(( RANDOM % ${#Array[@]} ))]}
done
}
#wait user to press any key to continue.
waituser()
{
tput civis && tput sc
echo -ne "[5;34mPress any key to continue,or Ctrl+C to exit ![0m"
read -s -n 1 press
tput cnorm && tput rc && tput el
}
fcmds()
{
local dir comd
for dir in `echo $PATH | tr ':' ' '`; do
[[ ! -d ${dir} ]] && continue
for comd in $( ls ${dir} |grep -i "$1" ); do
[[ -n ${2} ]] && { [[ ${#comd} -le ${2} ]] && echo $comd; continue; }
echo ${comd}
done
done
}
|