Using drush @self alias returns nothing
In order to use the @self alias, Drush must be able to detect and bootstrap your Drupal site based on the current working directory.  If your settings.php file is in the 'default' directory, then you may cd to your Drupal root directory, or any directory below it, and @self will work.  If your settings.php is in some other directory, then you must either cd to the directory that the settings.php file is in, or provide a --uri option to Drush.

You can also use @self without changing your working directory if you supply --root and --uri options to Drush.