
# ccictl set selector
#### 操作背景
支持某个资源设置选择算符。选择算符必须以字母或数字开头，可以包含字母、数字、连字符、点和下划线，最长为 63 个字符。 如果指定了 --resource-version，则更新将使用此资源版本，否则将使用现有的资源版本。
```
ccictl set selector (-f FILENAME | TYPE NAME) EXPRESSIONS [--resource-version=version]
```
#### 约束与限制
- 目前仅支持在 Service 对象上设置选择算符。
- 如果资源在 set selector 调用之前已有选择算符，则新的选择算符将覆盖旧的选择算符。
 
#### 示例
```
# 在创建 Service 之后设置选择算符
ccictl create service loadbalancer my-svc --tcp=8088:8088 --elb-id="xxx" -o yaml -nt1 | ccictl set selector --local -f - 'environ
ment=qa' -oyaml
```
#### 选项
```
--all
```
如果为真，则选择指定资源类型的命名空间中的所有资源。
```
--allow-missing-template-keys     默认值：true
```
如果为 true，在模板中字段或映射键缺失时忽略模板中的错误。 仅适用于 golang 和 jsonpath 输出格式。
```
-f, --filename strings
```
使用文件名来区分不同的资源。
```
-h, --help
```
selector 操作的帮助命令。
```
--local
```
如果为真，\`set selector\` 将不会与 API 服务器通信，而是在本地运行。
```
-o, --output string
```
输出格式。可选值为： json、yaml、name、go-template、go-template-file、template、templatefile、jsonpath、jsonpath-as-json、jsonpath-file。
```
-R, --recursive
```
递归处理在 -f、--filename 中给出的目录。当您想要管理位于同一目录中的相关清单时很有用。
```
--resource-version string
```
如果非空，则只有在所给值是对象的当前资源版本时，选择算符更新才会成功。仅在指定单个资源时有效。
```
--template string
```
当 -o=go-template、-o=go-template-file 时使用的模板字符串或模板文件路径。 模板格式为 golang 模板 \[http://golang.org/pkg/text/template/#pkg-overview\]。
**ccictl选项亦可在子命令中生效，列表如下：**
[父命令ccictl选项列表](https://support.huaweicloud.com/devg-cci2/ccictl_01.html#ccictl_01__section188081236162119)
