diff --git a/commands/core/core.drush.inc b/commands/core/core.drush.inc
index 1574128..f2e25f3 100644
--- a/commands/core/core.drush.inc
+++ b/commands/core/core.drush.inc
@@ -157,6 +157,7 @@ function core_drush_command() {
       'command' => 'The shell command to be executed.',
     ),
     'required-arguments' => TRUE,
+    'allow-additional-options' => TRUE,
     'examples' => array(
       'drush exec \'git pull\'' => 'Retrieve latest code from git',
     ),
@@ -730,7 +731,7 @@ function drush_core_quick_drupal() {
   drush_invoke('site-install', array(drush_get_option('profile')));
   // Log in with the admin user.
   // TODO: If site-install is given a sites-subdir other than 'default',
-  // then it will bootstrap to DRUSH_BOOTSTRAP_DRUPAL_SITE get the installer 
+  // then it will bootstrap to DRUSH_BOOTSTRAP_DRUPAL_SITE get the installer
   // to recognize the desired site directory. This somehow interferes
   // with our desire to bootstrap to DRUSH_BOOTSTRAP_DRUPAL_LOGIN here.
   // We could do the last few steps in a new process iff uri is not 'default'.
@@ -1021,6 +1022,9 @@ function drush_core_find_project_path($target) {
  * Command callback. Execute specified shell code. Often used by shell aliases
  * that start with !.
  */
-function drush_core_execute($script) {
-  return drush_op_system($script);
+function drush_core_execute() {
+  $args = func_get_args();
+  // @todo: get these options into $exec.
+  $options = drush_get_context('cli');
+  return (bool) !drush_op_system(implode(' ', $args));
 }
