CakePHP2系のShellでComponentを使う。

2系から shell は app/Console/Command に配置するようになりました。
ファイル名は TestShell.php とします。

1.3系ではファイルの読み込みに App::import を使っていましたが、2系では App::uses を使うようになりました。

ComponentCollection と、使用したい Component を読み込んで、

startup() でコード例のようにインスタンス化します。

<?php
App::uses('ComponentCollection', 'Controller');
App::uses('TestComponent', 'Controller/Component');

class TestShell extends Shell {

    public function startup() {
	$collection = new ComponentCollection();
	$this->Test = new TestComponent($collection);
	parent::startup();
    }
}

これで Shell で TestComponent を使えるようになりました!!