shell script

6 отговора 245 прегледа
#1

shell script

Trqbwa mi script w kojto da se wywevda ime na nqkakwa direktoriq i nqkakwo 4islo i da se prawi prowerka dali w dadenata direktoriq ima tolkowa swobodno mqsto. Pls help, opitah se sam da go napi6a i znam, 4e e nqkakwa besna boza, ama ni6to ne razbiram ot UNIX, a mnogo mi trqbwa towa. 10x

Отговор
в отговор на cadavre #2

Re: shell script

Свободното място не се определя за конкретна директория, а по общото оставащо пространство на дяла или по квотата на потребителя ако има зададена такава. Кажи какъв е твоя случай. А иначе командите, които ти трябват са df и quota.

I feel like I should have a great idea right now. But I don't.
Отговор
в отговор на Linux.Lab #3

Re: shell script

ami towa e to4niq citat na zada4ata:
скрипт, който да проверява има ли в директорията, зададена с първия аргумент, достатъчно свободно пространство, зададено с втория аргумент.

Отговор
в отговор на cadavre #4

Re: shell script

Ako svobodnoto mjasto se dadava v kilobajti, togava:

#!/bin/sh

[ ! -d $1 ] && echo "$1 is not a directory, or unable to stat" 1>&2 && exit 1
[ $2 -lt 0 ] && echo "$2 is not a number, or is less than zero" 1>&2 && exit 2
[ ! -x `which df` ] && echo "Can't use 'df' tool -- nonexistent or not in path" 1>&2 && exit 3

free_space=`df -k $1 | sed '1d' | awk '{print $4}'`
[ $2 -lt $free_space ] && echo "Free space on $1 ($free_space) is less than $2" 1>&2 && exit 1
echo "Free space on $1 ($free_space) is greater or equal to $2"

Shte sym shtastliv ako cadavre pone _razbrere_ kak toj raboti ;-)
I oshte neshto -- na AIX awk {print $4}' trjabva da e awk '{print $3}'


RTFM!
--sdg
Отговор
в отговор на sdg #5

Re: shell script

pitone@mailserver>./free /var 2000
Free space on /var (12225784) is less than 2000

В отговор на:

[ $2 -lt $free_space ] && echo "Free space on $1 ($free_space) is less than $2" 1>&2 && exit 1




$2 -gt $free_space ...

Отговор
в отговор на jordani #6

Re: shell script

Така си е :-)

От една страна, сърбят ме ръцете, така да се каже :-)
От друга, хич не ми се иска парче код, както в този случай, да удовлетвори
до толкова нуждата на търсещия информация, че той да използва примера
наготово, без да вникне в начина на решаване на проблема.
Така че, старая се да допускам в примерите, които давам, такива грешки,
които нарушават в някаква степен тяхната функционалност, без да пречат
на мисълта, вложена в кода.

В този смисъл, удоволствие е, когато видя, че някой ме е поправил!
(Не възприемайте думите ми надменно, отношението ми е съвсем чисто.)


RTFM!
--sdg
Отговор
в отговор на sdg #7

Re: shell script

Най-хубаво ще да е ако питащият те поправи :)
ама това май често си остава в сферата на мечтите



______________

истината е увивно растение
Отговор