-
−136
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
#!/bin/bash
ys="y"
ss=0
for fl in `find $1`
do
echo -n "Do you want archive file $fl?(y/n)"
read ck
if [ "$ck"=="$ys" ]; then
tar -cf $fl.tar $fl
ls -la $fl
ls -la $fl.tar
os=`ls -la $fl | gawk '{ print $5 }'`
ts=`ls -la $fl.tar | gawk '{ print $5 }'`
let "ds=ts-os"
let "ss=ss+ds"
echo "ss $ss ds $ds"
fi
done
Архивирует рекурсивно все файлы и расчитывает разницу между архивом и оригиналом.
AliceGoth,
25 Января 2011
-
−137
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
#!/bin/bash
while :
do
declare -a fls;
c=0;
z=0
for ff in `find $1`
do
for tf in `du $ff | gawk '{ print $1 }'`
do
fl=`echo $tf | gawk '{ print $1 }'`
if [ "$tf" -eq "$z" ]; then
echo tf $tf
echo ff $ff
fls[$c]=$ff;
rm $ff
fi
done
done
echo ${fls[*]}
sleep 1m;
done
Удаляет пустые файлы
AliceGoth,
24 Января 2011
-
−134
- 1
- 2
- 3
- 4
- 5
- 6
- 7
#!/bin/bash
c1=`cat ~/c1.txt`
let c1++
echo $c1
echo $c1 > ~/c1.txt
date >> ~/fd.txt
exit 0
Счётчик запуска считает количество и дату записывет в файл через crontab, я им пользуюсь сам.
AliceGoth,
23 Января 2011
-
−141
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
#!/bin/bash
function mdf()
{
cd $1
echo -n "\$1 "$1
echo
for a in "1 2 3 4 5"
do
mkdir $1$a
echo -n "1a "$1$a
echo
while let "$2<=5"
do
c=$2
let c++
mdf "$a" $c
done
while let "$2>=5"
do
ca=$2
while let "ca>0"
do
cd ..
let ca--
done
mdf "$a" $ca
done
done
}
mdf ./ 0
Мдф
AliceGoth,
23 Января 2011
-
−136
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
#!/bin/bash
edd=$PWD
a=`echo {0..10}/{0..10}`
b=`echo {0..10}/{0..10}/{0..10}`
mkdir {0..10}
for ma in `echo {0..10}`
do
echo $ma
echo $PWD
cp $0 $ma/$0
done
for md in $a
do
mkdir $md
echo $md
echo $PWD
cp $0 $md/$0
done
for mdb in $b
do
mkdir $mdb
echo $mdb
echo $PWD
cp $0 $mdb/$0
done
Директории и циклы на bash
AliceGoth,
23 Января 2011
-
−133
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
#!/bin/bash
c=0
d=0
while :
do
c=0
while let "c<=10"
do
let c++
echo -n $d/$c
echo
done
echo
let d++
let "d=d%10"
done
Не помню уже что
AliceGoth,
23 Января 2011
-
−135
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
#!/bin/bash
touch pp.sh
chmod 777 pp.sh
echo "#!/bin/bash" > ./pp.sh
while :
do
read x
n=`cat ~/.bash_history | wc -l`
let c=${RANDOM:0:3}
cat -b ~/.bash_history | grep ${RANDOM:0:3} | gawk '{ print $2" "$3" "$4" "$6" "$7 }' >> pp.sh
cat -b ~/.bash_history | grep ${RANDOM:0:3} | gawk '{ print $2" "$3" "$4" "$6" "$7 }'
done
Рандом
AliceGoth,
23 Января 2011
-
−140
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
#!/bin/bash
x=0;
y=0;
clear;
while :
do
while let "x>0"
do
let y++
let x--
clear;
tput cup $x $y
echo "+"
sleep 0.1s;
done
let y++;
echo $y" "$x
x=0;
while let "y>0"
do
let y--
let x++
clear;
tput cup $x $y
echo "+"
sleep 0.1s;
done
done
Обход курсора зигзагом
AliceGoth,
23 Января 2011
-
−137
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
#!/bin/bash
x=0;
y=0;
while :
do
for((iy=0;iy<=25;iy++))
{
for((i=0;i<=190;i++))
{
let y++;
clear
tput cup $x $y
echo "+";
sleep 0.01s;
}
let x++;
for((i=0;i<=190;i++))
{
let y--;
clear
tput cup $x $y
echo "+";
sleep 0.01s;
}
let x++;
}
for((iy=0;iy<=25;iy++))
{
for((i=0;i<=190;i++))
{
let y++;
clear
tput cup $x $y
echo "+";
sleep 0.01s;
}
let x--;
for((i=0;i<=190;i++))
{
let y--;
clear
tput cup $x $y
echo "+";
sleep 0.01s;
}
let x--;
}
done
Обход курсора
AliceGoth,
23 Января 2011
-
−141
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
#!/bin/bash
read str
str=${str//1/2}
str=${str//0/1}
str=${str//2/0}
echo $str
str=${str##*0};
echo $str
exit 0
for pid in `ps -ef | gawk '{ print $2 }'`
do
echo "pid "$pid;
cat /proc/$pid/comm
cmd=`cat /proc/$pid/cmdline`
echo ''
for fdinfo in `ls /proc/$pid/fd`
do
echo " "$fdinfo
if [ $USER==root ]; then
fd=`ls -l /proc/$pid/fd/$fdinfo | gawk '{ print $11 }'`
else
fd=`ls -l /proc/$pid/fd/$fdinfo | gawk '{ print $10 }'`
fi
owner=`ls -l $fd | gawk '{ print $3}'`
echo " "$fd" pid"$pid" cmdline "$cmd" own "$owner
done
done
Ищет файлы процесов
AliceGoth,
23 Января 2011