burncd 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. #!/usr/bin/env bash
  2. #=================HEADER==========================================|
  3. #AUTOR
  4. # Jefferson 'Slackjeff' Rocha
  5. #
  6. #PROGRAMA
  7. # BurnCD - Burn CLI Distribuition
  8. #
  9. #DESCRIÇÃO
  10. # BurnCD é um programa para gravar isos, utiliza o growisoifs
  11. # para fazer está função; Foi criado para ter um sintaxe bem fácil
  12. # para qualquer pessoa possa gravar sua distribuição favorita em
  13. # seu DVD.
  14. # Se precisar de ajudar utiliza o parâmetro -h ou --help
  15. #
  16. #=================================================================|
  17. #====================CONFIGURAÇÃO
  18. # Velocidade em que a media
  19. # será queimada. Normalmente os DVDs
  20. # utilizam até 16x. Não use o 'x'.
  21. SPEED='8'
  22. # Localidade do cd/dvdroom
  23. LOCAL='/dev/cdroom'
  24. #===============================
  25. #====================TESTES
  26. # Se existir barra no final da variável LOCAL
  27. # faça o corte.
  28. LOCAL="${LOCAL/%\//}"
  29. # Verificando se growisofs existe no sistema.
  30. if ! type growisofs &>/dev/null; then
  31. echo "Necessita do growisofs instalado em seu sistema."
  32. exit 1
  33. fi
  34. #==========================
  35. #==========================FUNCOES
  36. _HELP() {
  37. cat <<EOF
  38. burnd [OPÇÕES]
  39. OPÇÕES
  40. -b, --burn
  41. Opção para gravar ISO
  42. -h, --help
  43. Exibe está ajuda
  44. EXEMPLOS DE USO
  45. Supondo que quero gravar a iso da distribuição devuan
  46. e ela está localizada no meu home no diretório ISOS/
  47. Posso então entrar dentro do diretório ISOS/ ou passar
  48. o caminho completo!
  49. burncd -b /home/USUARIO/ISOS/devuan_ascii_x86_64.iso
  50. Se caso o burnd está localizado no diretório /usr/bin/
  51. ele está global, então posso fazer:
  52. cd /home/USUARIO/ISOS/; burnd -b devuan_ascii_x86_64.iso
  53. CONFIGURAÇÕES
  54. O burncd é feito sob a linguagem Shell Bash, e suas configurações
  55. como velocidade de gravação, setar outro dispositivo entre outras
  56. configurações você pode alterar no próprio programa internamente!
  57. Há uma sessão de configurações logo no cabeçalho do programa que é
  58. voltada para isto.
  59. AUTOR
  60. Jefferson 'slackjeff' Rocha
  61. BUGS
  62. root@slackjeff.com.br
  63. EOF
  64. }
  65. _BURN() {
  66. #Verificando se .iso foi passado no parâmetro.
  67. if ! echo "$1" | grep -q ".*\.iso"; then
  68. echo "Favor passar o arquivo '.iso', caminho absoluto ou não."
  69. echo "Para maiores informações use -h, --help"
  70. exit 1
  71. fi
  72. # Iniciando gravação.
  73. echo "-----> Iniciando a gravação de: ${1}"
  74. echo "-----> Velocidade ${SPEED}..."
  75. echo ""
  76. growisofs \
  77. -dvd-compat \
  78. -speed="$SPEED" \
  79. -Z "${LOCAL}=${1}"
  80. }
  81. #==========================START
  82. case $1 in
  83. -b|--burn)
  84. shift # Rebaixa agora =D
  85. _BURN "$@" # Chamada função
  86. ;;
  87. -h|--help)
  88. _HELP
  89. ;;
  90. *)
  91. _HELP
  92. ;;
  93. esac