Bash: различия между версиями
Перейти к навигации
Перейти к поиску
Vovan (обсуждение | вклад) (Новая: ==Работа с файлами содержащими пробелы== #!/bin/bash OLD_IFS=$IFS IFS=$(echo "") for i in $(ls *.odt) do echo "$i" done IFS=$OLD_IFS (11:31:41) ...) |
Vovan (обсуждение | вклад) |
||
| Строка 12: | Строка 12: | ||
(11:31:41) Юрий Азовцев: переопределяем переменную окружения IFS (она содержит символ - разделения слов в строке), меняем его на символ \n - перевода на новую строку - и все хокей | (11:31:41) Юрий Азовцев: переопределяем переменную окружения IFS (она содержит символ - разделения слов в строке), меняем его на символ \n - перевода на новую строку - и все хокей | ||
| − | ==== | + | ==Загрузка файла с хоста уменьшающего скорость== |
| + | |||
| + | #!/bin/bash | ||
| + | #antishaper.sh | ||
| + | for i in $(seq 1 100) | ||
| + | do | ||
| + | wget -c $1 & | ||
| + | wget_pid=$! | ||
| + | sleep 20s #ожидаем 20 секунд | ||
| + | ps ux | grep $wget_pid | grep wget | ||
| + | if [ $? -eq '1' ] | ||
| + | then | ||
| + | exit 1 | ||
| + | fi | ||
| + | kill $wget_pid | ||
| + | done | ||
| + | |||
| + | ==Бэкапы с уделением бэкапов за последние 30 дней== | ||
| + | |||
| + | #!/bin/bash | ||
| + | #backuper.sh | ||
| + | tar -czpf $(date +%Y-%m-%d)-backup.tar.gz $1 | ||
| + | echo "Backup Finished" | ||
| + | period=2592000 | ||
| + | for i in $(ls *-backup.tar.gz) | ||
| + | do | ||
| + | time=${i%-backup.tar.gz} | ||
| + | file_utime=$(date --date="$time" +%s) | ||
| + | cur_utime=$(date +%s) | ||
| + | if [ $(($cur_utime - $file_utime)) -gt $period ] | ||
| + | then | ||
| + | rm $i | ||
| + | echo "File $i deleted" | ||
| + | fi | ||
| + | done | ||
Версия 10:54, 28 апреля 2012
Работа с файлами содержащими пробелы
#!/bin/bash OLD_IFS=$IFS IFS=$(echo "") for i in $(ls *.odt) do echo "$i" done IFS=$OLD_IFS
(11:31:41) Юрий Азовцев: переопределяем переменную окружения IFS (она содержит символ - разделения слов в строке), меняем его на символ \n - перевода на новую строку - и все хокей
Загрузка файла с хоста уменьшающего скорость
#!/bin/bash #antishaper.sh for i in $(seq 1 100) do wget -c $1 & wget_pid=$! sleep 20s #ожидаем 20 секунд ps ux | grep $wget_pid | grep wget if [ $? -eq '1' ] then exit 1 fi kill $wget_pid done
Бэкапы с уделением бэкапов за последние 30 дней
#!/bin/bash
#backuper.sh
tar -czpf $(date +%Y-%m-%d)-backup.tar.gz $1
echo "Backup Finished"
period=2592000
for i in $(ls *-backup.tar.gz)
do
time=${i%-backup.tar.gz}
file_utime=$(date --date="$time" +%s)
cur_utime=$(date +%s)
if [ $(($cur_utime - $file_utime)) -gt $period ]
then
rm $i
echo "File $i deleted"
fi
done