Get or set the profile.

        If .profile is called with no args, the current profile
        is displayed.  If the .profile command is called with a
        single arg, then the current profile for the application
        will be set to the new value.

def run(self, command, application):
        """Get or set the profile.

        If .profile is called with no args, the current profile
        is displayed.  If the .profile command is called with a
        single arg, then the current profile for the application
        will be set to the new value.
        """
        if len(command) == 1:
            profile = application.profile
            if profile is None:
                self._output.write(
                    "Current shell profile: no profile configured\n"
                    "You can change profiles using: .profile profile-name\n")
            else:
                self._output.write("Current shell profile: %s\n" % profile)
        elif len(command) == 2:
            new_profile_name = command[1]
            application.profile = new_profile_name
            self._output.write("Current shell profile changed to: %s\n" %
                               new_profile_name)
        else:
            self._err.write("Usage:\n%s\n" % self.USAGE)