Script Bash para o comando Rar

1

Eu preciso de um script para rar meus arquivos

o uso será assim

r1 archivename fileordirtocompress

com os seguintes atributos

rar a -m0 -v1024000 -r 

Como esse script bash se parece?

#!/bin/bash

for file in "$*"
do

rar a -v10000k archive.rar $file

done

Encontrei algo assim, mas gostaria de poder alterar o nome do arquivo

exemplos:

r1 MyPhotos Myphotos/ = MyPhotos.rar (Myphotos/ inside with subfolders)

r1 Nicemusic *.mp3 = Nicemusic.rar (all .mp3 inside)

r1 Familyvideo movie1.avi = Familyvideo (movie1.avi file inside)

    
por John 27.10.2013 / 01:10

1 resposta

1

Você também pode usar a variável $file para nomear o arquivo.

#!/bin/bash

for file in "$*"
do

    rar a -m0 -v1024000 -r ${file}.rar $file

done

Note que alterei as opções para rar para o que você disse que queria. O loop for armazena todos os arquivos que encontra em * (ou seja, todos os arquivos no diretório atual) na variável $file , um por um, conforme passa pelo loop. Você precisa do {} em torno do nome da variável antes de .rar para garantir que o bash não pense que você está tentando encontrar uma variável chamada $file.rar .

    
por 27.10.2013 / 02:06