--account <ACCOUNT> | Google Cloud Platform user account to use for invocation. Overrides the default *core/account* property value for this command invocation |
--billing-project <BILLING_PROJECT> | The Google Cloud Platform project that will be charged quota for operations performed in gcloud. If you need to operate on one project, but need quota against a different project, you can use this flag to specify the billing project. If both `billing/quota_project` and `--billing-project` are specified, `--billing-project` takes precedence. Run `$ gcloud config set --help` to see more information about `billing/quota_project` |
--command <COMMAND> | A command to run on the virtual machine.
+
Runs the command on the target instance and then exits |
--configuration <CONFIGURATION> | The configuration to use for this command invocation. For more
information on how to use configurations, run:
`gcloud topic configurations`. You can also use the CLOUDSDK_ACTIVE_CONFIG_NAME environment
variable to set the equivalent of this flag for a terminal
session |
--container <CONTAINER> | The name or ID of a container inside of the virtual machine instance
to connect to. This only applies to virtual machines that are using
a Google Container-Optimized virtual machine image. For more
information, see [](https://cloud.google.com/compute/docs/containers) |
--dry-run | Print the equivalent scp/ssh command that would be run to stdout, instead of executing it |
--flags-file <YAML_FILE> | A YAML or JSON file that specifies a *--flag*:*value* dictionary.
Useful for specifying complex flag values with special characters
that work with any command interpreter. Additionally, each
*--flags-file* arg is replaced by its constituent flags. See
$ gcloud topic flags-file for more information |
--flatten <KEY> | Flatten _name_[] output resource slices in _KEY_ into separate records
for each item in each slice. Multiple keys and slices may be specified.
This also flattens keys for *--format* and *--filter*. For example,
*--flatten=abc.def* flattens *abc.def[].ghi* references to
*abc.def.ghi*. A resource record containing *abc.def[]* with N elements
will expand to N records in the flattened output. This flag interacts
with other flags that are applied in this order: *--flatten*,
*--sort-by*, *--filter*, *--limit* |
--force-key-file-overwrite | If enabled, the gcloud command-line tool will regenerate and overwrite
the files associated with a broken SSH key without asking for
confirmation in both interactive and non-interactive environments.
+
If disabled, the files associated with a broken SSH key will not be
regenerated and will fail in both interactive and non-interactive
environments |
--format <FORMAT> | Set the format for printing command output resources. The default is a
command-specific human-friendly output format. The supported formats
are: `config`, `csv`, `default`, `diff`, `disable`, `flattened`, `get`, `json`, `list`, `multi`, `none`, `object`, `table`, `text`, `value`, `yaml`. For more details run $ gcloud topic formats |
--help | Display detailed help |
--impersonate-service-account <SERVICE_ACCOUNT_EMAIL> | For this gcloud invocation, all API requests will be made as the given service account instead of the currently selected account. This is done without needing to create, download, and activate a key for the account. In order to perform operations as the service account, your currently selected account must have an IAM role that includes the iam.serviceAccounts.getAccessToken permission for the service account. The roles/iam.serviceAccountTokenCreator role has this permission or you may create a custom role. Overrides the default *auth/impersonate_service_account* property value for this command invocation |
--internal-ip | Connect to instances using their internal IP addresses rather than their
external IP addresses. Use this to connect from one instance to another
on the same VPC network, over a VPN connection, or between two peered
VPC networks.
+
For this connection to work, you must configure your networks and
firewall to allow SSH connections to the internal IP address of
the instance to which you want to connect.
+
To learn how to use this flag, see
[](https://cloud.google.com/compute/docs/instances/connecting-advanced#sshbetweeninstances) |
--log-http | Log all HTTP server requests and responses to stderr. Overrides the default *core/log_http* property value for this command invocation |
--plain | Suppress the automatic addition of *ssh(1)*/*scp(1)* flags. This flag
is useful if you want to take care of authentication yourself or
use specific ssh/scp features |
--project <PROJECT_ID> | The Google Cloud Platform project ID to use for this invocation. If
omitted, then the current project is assumed; the current project can
be listed using `gcloud config list --format='text(core.project)'`
and can be set using `gcloud config set project PROJECTID`.
+
`--project` and its fallback `core/project` property play two roles
in the invocation. It specifies the project of the resource to
operate on. It also specifies the project for API enablement check,
quota, and billing. To specify a different project for quota and
billing, use `--billing-project` or `billing/quota_project` property |
--quiet | Disable all interactive prompts when running gcloud commands. If input
is required, defaults will be used, or an error will be raised.
Overrides the default core/disable_prompts property value for this
command invocation. This is equivalent to setting the environment
variable `CLOUDSDK_CORE_DISABLE_PROMPTS` to 1 |
--ssh-flag <SSH_FLAG> | Additional flags to be passed to *ssh(1)*. It is recommended that flags
be passed using an assignment operator and quotes. Example:
+
$ {command} example-instance --zone=us-central1-a --ssh-flag="-vvv" --ssh-flag="-L 80:localhost:80"
+
This flag will replace occurrences of ``%USER%'' and ``%INSTANCE%'' with
their dereferenced values. For example, passing ``80:%INSTANCE%:80`` into
the flag is equivalent to passing ``80:162.222.181.197:80'' to *ssh(1)*
if the external IP address of 'example-instance' is 162.222.181.197.
+
If connecting to the instance's external IP, then %INSTANCE% is replaced
with that, otherwise it is replaced with the internal IP |
--ssh-key-expiration <SSH_KEY_EXPIRATION> | The time when the ssh key will be valid until, such as
"2017-08-29T18:52:51.142Z." This is only valid if the instance is not
using OS Login. See $ gcloud topic datetimes for information on time
formats |
--ssh-key-expire-after <SSH_KEY_EXPIRE_AFTER> | The maximum length of time an SSH key is valid for once created and
installed, e.g. 2m for 2 minutes. See $ gcloud topic datetimes for
information on duration formats |
--ssh-key-file <SSH_KEY_FILE> | The path to the SSH key file. By default, this is ``~/.ssh/google_compute_engine'' |
--strict-host-key-checking <STRICT_HOST_KEY_CHECKING> | Override the default behavior of StrictHostKeyChecking for the
connection. By default, StrictHostKeyChecking is set to 'no' the first
time you connect to an instance, and will be set to 'yes' for all
subsequent connections. _STRICT_HOST_KEY_CHECKING_ must be one of: *yes*, *no*, *ask* |
--trace-token <TRACE_TOKEN> | Token used to route traces of service requests for investigation of issues. Overrides the default *core/trace_token* property value for this command invocation |
--tunnel-through-iap | Tunnel the ssh connection through Cloud Identity-Aware Proxy for TCP
forwarding.
+
To learn more, see the
[IAP for TCP forwarding documentation](https://cloud.google.com/iap/docs/tcp-forwarding-overview) |
--user-output-enabled | Print user intended output to the console. Overrides the default *core/user_output_enabled* property value for this command invocation. Use *--no-user-output-enabled* to disable |
--verbosity <VERBOSITY> | Override the default verbosity for this command. Overrides the default *core/verbosity* property value for this command invocation. _VERBOSITY_ must be one of: *debug*, *info*, *warning*, *error*, *critical*, *none* |
--zone <ZONE> | Zone of the instance to connect to. If not specified and the ``compute/zone'' property isn't set, you
may be prompted to select a zone.
+
To avoid prompting when this flag is omitted, you can set the
``compute/zone'' property:
+
$ gcloud config set compute/zone ZONE
+
A list of zones can be fetched by running:
+
$ gcloud compute zones list
+
To unset the property, run:
+
$ gcloud config unset compute/zone
+
Alternatively, the zone can be stored in the environment variable
``CLOUDSDK_COMPUTE_ZONE'' |