Espero que esse link te ajude.
http://bash.cyberciti.biz/file-management/find-file-permission-script/
2009/3/17 tiagofei
> Pessoal, salve salve,
>
> Hoje estava fazendo um script, e precisei conferir se um diretorio tinha
> permissao 777, se nao tivesse, eu colocava, pela lógica( e pela fac
stat -c '%a' arquivo.
exemplo
rom...@romano:~/Desktop$ stat -c '%a' Ranma½\ Vol02.zip
644
Ai para saber se ele é 777 é só fazer um if
$file=Ranma½\ Vol02.zip
[[ (stat -c '%a' $file) -eq 640 ]] && echo "sou um arquivo 640"
Ae o if eu não testei só o stat, da uma olhada no help do stat que ele
Boa tarde Pessoal,
Estou me enrolando aqui para fazer um script que acrescente +1 ao
último dígito da linha SERIAL de cada arquivo de zona de um servidor DNS.
Tenho um diretório com vários arquivos de zona, e dentro dele temos
o SERIAL, cada um mais ou menos com o seguinte conteúdo:
Garante que toda linha tem a palavra "serial" ? Ou que seja a terceira linha?
[r...@cerebro ~]# cat dns
$ttl 300
@ IN SOA dominio.com.br. admin.dominio.com.br. (
2005122002 ; serial > ESTA LINHA
300 ; refresh every 10 hours
300 ; retry after 1 hour
300 ; expire after 1000 hours
300 ; default t
O amigo foi mais rápido no gatilho
EXPR1=`cat teste | grep 20051 | awk '{print $1}'`
sed -i "/serial/s/$EXPR1/$(expr $EXPR1 + 1)/" teste
2009/3/18 Flavio Junior
> Garante que toda linha tem a palavra "serial" ? Ou que seja a terceira
> linha?
>
> [r...@cerebro ~]# cat dns
>
> $ttl 300
> @ IN
Fala Flavio,
primeiro procuro o serial e somo 1 nele:
$ Ser=$[$(sed '/serial/s/ .*//' Arq) + 1]
Isto é, criei uma variável Ser a partir da linha que achasse a
palavraserial desprezando
tudo após o primeiro espaço em branco e somando 1 a este número.
Em seguida fazer:
$ sed -i.veio "/serial/s/^[