Генерировать php-классы в bash

У меня есть этот script:

  #!/bin/bash

  if [[ -z "$1" ]] ; then
      echo "Class is required"
      exit 1;
  fi

  if [[ -z "$2" ]] ; then
      package="Default"
  else
      package=$2;
  fi

  echo "<?php
  /**
   * $1.class.php
   * 
   * Vcard class file.
   * @name        Project
   * @author      Author
   * @link        http://www.domain.com
   * @copyright   Copyright © 2011
   * @package     $package
   * @version     1.0
  */

  /**
   * The main $1 class
   * @package $package
  */
  class $1 {

      /**
       * Constructor setup.
       */
      public function __construct() {
      }

      /**
       * Destructor setup.
       */
      public function __destruct() {
      }
  }
  " > $1.class.php

  php -l $1.class.php
  echo "Done";

если я делаю:

./generate.sh my_class создает все с my_class. как я могу изменить это на: MyClass?

Мне нужно использовать MyClass для имени файла, а также имя класса и т.д.... далее в коде я использую аргумент (в данном случае my_class) для некоторых других целей.

спасибо

Ответ 1

Если вы хотите, чтобы он назывался MyClass, вы можете добавить это где-то после проверки:

fname=$( IFS='_'; for i in ${1,,}; do echo -n ${i^}; done )

И используйте $fname.class.php

Ответ 2

Похоже, он уже настроен для этого. Просто выполните ./generate.sh MyClass