Rodar script nas ultimas pastas dos diretorios

1. Rodar script nas ultimas pastas dos diretorios

celson rodrigues
celson.dev

(usa Linux Mint)

Enviado em 01/06/2013 - 23:57h

Boa noite pessoal, estou com um problema um tanto simples de resolver mais não estou conseguindo.
Primeiro vou explicar o meu problema, Após ser furtado algumas vezes resolvi instalar uma ip camera em minha residencia pra tentar pegar o "rato" que está fazendo o estrago. Pesquisei varias soluções e achei uma que me serviu, o ZONEMINDER. Bem fácil de instalar, bem intuitivo e tudo mais porem ele gera uma sequencia de .jpg com as imagens captadas na camera e cria diversos eventos estruturados em pasta (ano/mes/dia/hora/minuto/segundo/sequencia de imagens). nas configurações do ZM existe uma opção para definir o tamanho do evento porem não funciona (a camera dispara algum tipo de alerta que força o ZM gerar um novo evento) então sempre no dia seguinte que vou verificar as imagens da noite anterior existe diversas pasta e subpasta, e sempre na ultima pasta existe as imagens então tenho que navegar pasta por pasta, e na ultima pasta rodar o comando no terminal. Pelo ZM está gerando vários eventos fica muito trabalhoso percorrer cada diretorio criar um video e depois juntar todos. Estou tentando gerar um script que percorra pasta por pasta e na ultima pasta rode o comando.
Abaixo os comando que utilizo para gerar os videos

primeiro estava indo uma-a-uma
avconv -f image2 -i /var/cache/zoneminder/events/camera/13/05/30/05/02/08/%03d-capture.jpg -b 65536k -r 24 /home/celsonrd/zoneminder/videoUm.avi

li algumas coisas que falou do comando pwd, entao criei um o scrip abaixo
avconv -f image2 -i pwd/%03d-capture.jpg -b 65536k -r 24 /home/celsonrd/Desktop/1.avi

funcionou, porem ainda assim tenho que navegar diretório a diretório, alguem tem alguma sugestão para o meu problema??





  


2. Re: Rodar script nas ultimas pastas dos diretorios

Fernando
phoemur

(usa Debian)

Enviado em 02/06/2013 - 00:14h

Usa o comando find para entrar em todas as subpastas achando todos os arquivos jpg


3. Re: Rodar script nas ultimas pastas dos diretorios

Fernando
phoemur

(usa Debian)

Enviado em 02/06/2013 - 00:18h

algo mais ou menos assim:


find /var/cache/zoneminder/events/camera/ -iname *.jpg -type f -exec avconv -f image2 -i {} -b 65536k -r 24 /home/celsonrd/zoneminder/videoUm.avi \;



4. Re: Rodar script nas ultimas pastas dos diretorios

celson rodrigues
celson.dev

(usa Linux Mint)

Enviado em 02/06/2013 - 09:37h

Bom dia,

obrigado pela resposta.

utilizei o comando a acima mas não houve exito, é executada uma linha e logo após pede confirmação da overwrite do arquivo recém-criado.


Input #0, image2, from '/var/cache/zoneminder/events/camera/13/06/02/07/00/00/58120-capture.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
Stream #0.0: Video: mjpeg, yuvj420p, 640x480 [PAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
File '/home/celsonrd/zoneminder/videoUm.avi' already exists. Overwrite ? [y/N] y
Incompatible pixel format 'yuvj420p' for codec 'mpeg4', auto-selecting format 'yuv420p'
[buffer @ 0x99b49a0] w:640 h:480 pixfmt:yuvj420p
[avsink @ 0x99b59c0] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x99b2c80] w:640 h:480 fmt:yuvj420p -> w:640 h:480 fmt:yuv420p flags:0x4
Output #0, avi, to '/home/celsonrd/zoneminder/videoUm.avi':
Metadata:
ISFT : Lavf53.21.1
Stream #0.0: Video: mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 65536 kb/s, 24 tbn, 24 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg -> mpeg4)
Press ctrl-c to stop encoding
frame= 1 fps= 0 q=6.2 Lsize= 30kB time=0.04 bitrate=5842.6kbits/s
video:24kB audio:0kB global headers:0kB muxing overhead 23.448276%
avconv version 0.8.6-6:0.8.6-0ubuntu0.12.10.1, Copyright (c) 2000-2013 the Libav developers
built on Apr 2 2013 17:07:34 with gcc 4.7.2
Input #0, image2, from '/var/cache/zoneminder/events/camera/13/06/02/07/00/00/23355-capture.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
Stream #0.0: Video: mjpeg, yuvj420p, 640x480 [PAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
File '/home/celsonrd/zoneminder/videoUm.avi' already exists. Overwrite ? [y/N] y







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts