精华内容
下载资源
问答
  • Linux的set命令

    千次阅读 2019-07-24 13:05:23
    set命令主要用来设置shell,在编写shell脚本时,使用set命令能设置shell的执行方式,根据需求不同,采用的参数设置也不同。set命令也用来显示系统中已存在的shell变量以及设置新的shell变量。 2. set命令的常用参数...

    文章作者:Tyan
    博客:noahsnail.com  |  CSDN  |  简书

    1. set命令介绍

    set命令主要用来设置shell,在编写shell脚本时,使用set命令能设置shell的执行方式,根据需求不同,采用的参数设置也不同。set命令也用来显示系统中已存在的shell变量以及设置新的shell变量。

    2. set命令的常用参数及作用

    • set

    不带参数的set命令用来显示环境变量。

    root@3500f62fe5ae:/workspace# set
    BASH=/bin/bash
    BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extquote:force_fignore:histappend:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
    BASH_ALIASES=()
    BASH_ARGC=()
    BASH_ARGV=()
    BASH_CMDS=()
    BASH_LINENO=()
    BASH_SOURCE=()
    BASH_VERSINFO=([0]="4" [1]="3" [2]="48" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
    BASH_VERSION='4.3.48(1)-release'
    COLUMNS=236
    CUDA_HOME=/usr/local/cuda
    CUDA_PKG_VERSION=10-0=10.0.130-1
    CUDA_VERSION=10.0.130
    CUDNN_VERSION=7.6.0.64
    ...
    
    • set -e

    -e参数表示只要shell脚本中发生错误,即命令返回值不等于0,则停止执行并退出shell。set -e在shell脚本中经常使用。默认情况下,shell脚本碰到错误会报错,但会继续执行后面的命令。

    test.sh脚本内容如下:

    #!/usr/bin/env bash
    set -e
    
    hello
    echo "Hello set"
    

    执行结果如下:

    root@3500f62fe5ae:/workspace# sh test.sh
    test.sh: 4: test.sh: hello: not found
    

    注:set +e表示关闭-e选项,set -e表示重新打开-e选项。

    • set -u

    -u参数表示shell脚本执行时如果遇到不存在的变量会报错并停止执行。默认不加-u参数的情况下,shell脚本遇到不存在的变量不会报错,会继续执行。

    test.sh脚本内容如下:

    #!/usr/bin/env bash
    echo $test
    
    set -u
    echo $hello
    

    执行结果如下:

    root@3500f62fe5ae:/workspace# sh test.sh
    
    test.sh: 5: test.sh: hello: parameter not set
    

    参考资料

    1. http://www.ruanyifeng.com/blog/2017/11/bash-set.html
    2. http://www.runoob.com/linux/linux-comm-set.html
    3. http://man.linuxde.net/set
    展开全文
  • set命令用法

    千次阅读 2018-01-18 19:51:01
    显示、设置或删除 cmd.exe 环境变量。SET [variable=[string...如果命令扩展被启用,SET 会如下改变:可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配SET 命令已使用的名称的所有变量的值。例如: SET P会显示
     
    

    显示、设置或删除 cmd.exe 环境变量。

    SET [variable=[string]]

      variable  指定环境变量名。
      string    指定要指派给变量的一系列字符串。

    要显示当前环境变量,键入不带参数的 SET。

    如果命令扩展被启用,SET 会如下改变:

    可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配
    SET 命令已使用的名称的所有变量的值。例如:

        SET P

    会显示所有以字母 P 打头的变量

    如果在当前环境中找不到该变量名称,SET 命令将把 ERRORLEVEL
    设置成 1。

    SET 命令不允许变量名含有等号。

    在 SET 命令中添加了两个新命令行开关:

        SET /A expression
        SET /P variable=[promptString]

    /A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式
    评估器很简单并以递减的优先权顺序支持下列操作:

        ()                  - 分组
        ! ~ -               - 一元运算符
        * / %               - 算数运算符
        + -                 - 算数运算符
        << >>               - 逻辑移位
        &                   - 按位“与”
        ^                   - 按位“异”
        |                   - 按位“或”
        = *= /= %= += -=    - 赋值
          &= ^= |= <<= >>=
        ,                   - 表达式分隔符

    如果您使用任何逻辑或取余操作符, 您需要将表达式字符串用
    引号扩起来。在表达式中的任何非数字字符串键作为环境变量
    名称,这些环境变量名称的值已在使用前转换成数字。如果指定
    了一个环境变量名称,但未在当前环境中定义,那么值将被定为
    零。这使您可以使用环境变量值做计算而不用键入那些 % 符号
    来得到它们的值。如果 SET /A 在命令脚本外的命令行执行的,
    那么它显示该表达式的最后值。该分配的操作符在分配的操作符
    左边需要一个环境变量名称。除十六进制有 0x 前缀,八进制
    有 0 前缀的,数字值为十进位数字。因此,0x12 与 18 和 022
    相同。请注意八进制公式可能很容易搞混: 08 和 09 是无效的数字,
    因为 8 和 9 不是有效的八进制位数。

    /P 命令行开关允许将变量数值设成用户输入的一行输入。读取输入
    行之前,显示指定的 promptString。promptString 可以是空的。

    环境变量替换已如下增强:

        %PATH:str1=str2%

    会扩展 PATH 环境变量,用 "str2" 代替扩展结果中的每个 "str1"。
    要有效地从扩展结果中删除所有的 "str1","str2" 可以是空的。
    "str1" 可以以星号打头;在这种情况下,"str1" 会从扩展结果的
    开始到 str1 剩余部分第一次出现的地方,都一直保持相配。

    也可以为扩展名指定子字符串。

        %PATH:~10,5%

    会扩展 PATH 环境变量,然后只使用在扩展结果中从第 11 个(偏
    移量 10)字符开始的五个字符。如果没有指定长度,则采用默认
    值,即变量数值的余数。如果两个数字(偏移量和长度)都是负数,
    使用的数字则是环境变量数值长度加上指定的偏移量或长度。

        %PATH:~-10%

    会提取 PATH 变量的最后十个字符。

        %PATH:~0,-2%

    会提取 PATH 变量的所有字符,除了最后两个。

    终于添加了延迟环境变量扩充的支持。该支持总是按默认值被
    停用,但也可以通过 CMD.EXE 的 /V 命令行开关而被启用/停用。
    请参阅 CMD /?

    考虑到读取一行文本时所遇到的目前扩充的限制时,延迟环境
    变量扩充是很有用的,而不是执行的时候。以下例子说明直接
    变量扩充的问题:

        set VAR=before
        if "%VAR%" == "before" (
            set VAR=after
            if "%VAR%" == "after" @echo If you see this, it worked
        )

    不会显示消息,因为在读到第一个 IF 语句时,BOTH IF 语句中
    的 %VAR% 会被代替;原因是: 它包含 IF 的文体,IF 是一个
    复合语句。所以,复合语句中的 IF 实际上是在比较 "before" 和
    "after",这两者永远不会相等。同样,以下这个例子也不会达到
    预期效果:

        set LIST=
        for %i in (*) do set LIST=%LIST% %i
        echo %LIST%

    原因是,它不会在目前的目录中建立一个文件列表,而只是将
    LIST 变量设成找到的最后一个文件。这也是因为 %LIST% 在
    FOR 语句被读取时,只被扩充了一次;而且,那时的 LIST 变量
    是空的。因此,我们真正执行的 FOR 循环是:

        for %i in (*) do set LIST= %i

    这个循环继续将 LIST 设成找到的最后一个文件。

    延迟环境变量扩充允许您使用一个不同的字符(惊叹号)在执行
    时间扩充环境变量。如果延迟的变量扩充被启用,可以将上面
    例子写成以下所示,以达到预期效果:

        set VAR=before
        if "%VAR%" == "before" (
            set VAR=after
            if "!VAR!" == "after" @echo If you see this, it worked
        )

        set LIST=
        for %i in (*) do set LIST=!LIST! %i
        echo %LIST%

    如果命令扩展被启用,有几个动态环境变量可以被扩展,但
    不会出现在 SET 显示的变量列表中。每次变量数值被扩展时,
    这些变量数值都会被动态计算。如果用户用这些名称中任何
    一个定义变量,那个定义会替代下面描述的动态定义:

    %CD% - 扩展到当前目录字符串。

    %DATE% - 用跟 DATE 命令同样的格式扩展到当前日期。

    %TIME% - 用跟 TIME 命令同样的格式扩展到当前时间。

    %RANDOM% - 扩展到 0 和 32767 之间的任意十进制数字。

    %ERRORLEVEL% - 扩展到当前 ERRORLEVEL 数值。

    %CMDEXTVERSION% - 扩展到当前命令处理器扩展版本号。

    %CMDCMDLINE% - 扩展到调用命令处理器的原始命令行。

    展开全文
  • Bash脚本教程之set命令

    千次阅读 2020-07-09 21:47:39
    set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本章介绍set的基本用法,帮助你写出更安全的 Bash 脚本。 简介 我们知道,Bash 执行脚本时,会创建一个子 Shell。 $ bash ...

    目录

    简介

    set -u

    set -x

    Bash 的错误处理

    set -e

    set -o pipefail

    其他参数

    set 命令总结

    shopt 命令


    set命令是 Bash 脚本的重要环节,却常常被忽视,导致

    展开全文
  • Redis Config Set 命令

    千次阅读 2019-08-20 17:11:14
    Redis Config Set 命令可以动态地调整 Redis 服务器的配置(configuration)而无须重启。 你可以使用它修改配置参数,或者改变 Redis 的持久化(Persistence)方式。 语法 redis Config Set 命令基本语法如下: ...

    Redis Config Set 命令可以动态地调整 Redis 服务器的配置(configuration)而无须重启。

    你可以使用它修改配置参数,或者改变 Redis 的持久化(Persistence)方式。

    语法

    redis Config Set 命令基本语法如下:

    redis 127.0.0.1:6379> CONFIG Set parameter value 

    可用版本

    >= 2.0.0

    返回值

    当设置成功时返回 OK ,否则返回一个错误。

    实例

    redis 127.0.0.1:6379> CONFIG GET slowlog-max-len
    1) "slowlog-max-len"
    2) "1024"
    
    redis 127.0.0.1:6379> CONFIG SET slowlog-max-len 10086
    OK
    
    redis 127.0.0.1:6379> CONFIG GET slowlog-max-len
    1) "slowlog-max-len"
    2) "10086"
    
    展开全文
  • Hive篇.set命令使用

    千次阅读 2019-07-21 20:03:34
    Hive命令行下执行set命令【仅当前会话有效】: //设置显示当前使用的数据库 set hive.cli.print.current.db=true; //设置显示表名 set hive.cli.print.header=true; Hive脚本中配置set命令【当前机器有效】: //进入...
  • Linux中set命令使用总结

    千次阅读 2018-08-12 23:18:35
    Linux中set命令总结 set命令 功能:用来设置所使用shell的执行方式,可依照不同的需求来进行设置。 set语法 set [+ -abCdefhHklmnpPtuvx] set参数 a:表示已修改的变量,以供输出至环境变量 b:使被中止的后台...
  • shell之set 命令

    千次阅读 2019-10-25 17:00:24
    我们知道,Bash 执行脚本的时候,会创建一个新的 Shell。...set命令用来修改 Shell 环境的运行参数,也就是可以定制环境。一共有十几个参数可以定制,官方手册有完整清单,本文介绍其中最常用的四个。 1)...
  • linux set 命令及linux设置环境变量命令
  • Linux中set命令介绍

    千次阅读 2016-11-20 09:18:40
    set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,...
  • 批处理命令学习笔记——Set命令

    千次阅读 2016-12-08 13:32:53
    Set 命令 显示、设置或删除 cmd.exe 环境变量。语法: SET [variable=[string]] SET [[/a [expression]] [/p [variable=]] string] variable 指定环境变量名。string 指定要指派给变量的一系列字符串。 要显示当前...
  • windows的set命令使用简介

    万次阅读 2018-10-14 13:51:38
    windows的set命令使用简介   本博客(http://blog.csdn.net/livelylittlefish)贴出作 者(三二一@小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!   windows的set命令使用简介   作用:显示、...
  • sql中set命令解析

    千次阅读 2017-11-14 22:32:00
    1.SET ANSI_DEFAULTS {ON | OFF} 将一组与SQL Server的运行环境有关的选项设置为SQL-92标准 2.SET ANSI_NULL_DFLT_OFF {ON | OFF} ...当数据库选项ANSI null default被设置为true时该SET命令用来确定是否忽略...
  • npm配置文件及npm config set命令解释

    千次阅读 2021-01-13 09:50:09
    npm配置文件及npm config set命令解释如何找到npm配置文件对npm config set命令的解释 如何找到npm配置文件 在已经安装成功npm的情况下,只需要在CMD里边输入npm config get userconfig即可得到用户自定义配置文件的...
  • Windows下set命令详解

    千次阅读 2012-09-26 18:25:29
    最近想要在Windows下批量备份文件成不同的日期后缀,需要一个时间变量,于是翻阅了很多资料,发现可以用set命令很方便得在bat中实现。于是顺便也研究了一下set命令的详细使用方法。首先来看一下set命令的官方help: ...
  • Redis set命令会去掉过期时间

    千次阅读 2019-07-08 17:20:15
    Redis set命令会去掉过期时间 对于字符串类型键,执行set命令会去掉过期时间,这个问题很容易在开发中被忽视。 先给个例子: 127.0.0.1:6379> set hello world ok 127.0.0.1:6379>expire hello 50 (integer) 1...
  • Linux 系统设置 : set 命令详解

    千次阅读 2018-09-24 13:44:51
    set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。...
  • DOS中的set命令

    千次阅读 2017-03-09 15:29:19
    使用set命令给环境变量赋值时,格式如key=value,其中key与=之间不能有空格,否则会造成赋值失败 执行如下批处理文件,会得不到想要的结果: @ECHO OFF set a ="1 echo %a% set b =4" echo %b% set c...
  • 工作中经常在shell脚本中看到set的这两...set命令的-e参数,linux自带的说明如下: "Exit immediately if a simple command exits with a non-zero status." 也就是说,在"set -e"之后出现的代码,一旦出现了返回值非零
  • 图解Win7下set命令使用

    千次阅读 2016-05-21 10:20:12
    windows批处理set命令 [设置变量] 格式:set 变量名=变量值 详细:被设定的变量以%变量名%引用 [取消变量] 格式:set 变量名= 详细:取消后的变量若被引用%变量名%将为空 [展示变量] 格式:set 变量...
  • Redis分布式锁 SET命令实现

    千次阅读 2018-01-22 20:41:18
    基于Redis命令:SET key valueNX EX max-lock-time  ...1.SET命令是原子性操作,NX指令保证只要当key不存在时才会设置value 2.设置的value要有唯一性,来确保锁不会被误删(value=系统时间戳+UUID) 3.当上
  • DOS SET命令详解

    千次阅读 2012-03-13 08:34:15
    一、用set命令设置自定义变量 显示、设置或删除 cmd.exe 环境变量。 SET [variable=[string]]  variable 指定环境变量名。  string 指定要指派给变量的一系列字符串。 要显示当前环境变量,键入不带参数的 ...
  • set,E文翻译过来就是“设置”的意思,相当于数学里的“令”。 如:set X=5,就是令X=5的意思。 语法形式: SET [variable=[string]] SET /P variable=[promptString] SET /A expression 一、SET [v...
  • 容器编排技术 -- Kubernetes kubectl set 命令详解 1kubectl set 2语法 3子命令 kubectl set 配置应用资源。 使用这些命令能帮你更改现有应用资源一些信息。 语法 $ set SUBCOMMAND 子命令 image ...
  • Oracle sqlplus中常用的set命令

    千次阅读 2016-11-18 17:00:54
    Oracle sqlplus中常用的set命令 set echoon --设置运行命令是是否显示语句 set feedback on --设置显示“已选择XX行” set colsep | --设置列与列之间的分割符号 set pagesize 10 --设置每一页的行数 ...
  • Sqlplus下的set命令详解

    千次阅读 2016-02-01 10:20:00
    在此就来给大家详细的介绍相关的set命令。 (1) sql>set echo {on|off}; 在用一个start命令执行sql脚本时,是否显示脚本中正在执行的命令。 (2) sql>set feedback{6|n|on|off}; 是否显示当前sql语句查
  • 使用SET命令修改用户密码

    千次阅读 2017-04-27 21:24:39
    .登录MySQL服务器后,使用SET命令修改当前用户密码 语法:SET PASSWORD [FOR'username'@'host ']=PASSWORD ("nerpassword")  ▔▔▔▔▔▔▔▔▔▔↓▔▔▔▔▔▔▔▔▔▔▔▔▔  
  • SHELL 下的set命令

    千次阅读 2012-05-13 23:21:00
    最近需要看一些简单的脚本,里面总会遇到一些set -x,set +x之类的命令,这几个命令在...于是硬着头皮man了一下,算是对set命令做一个总结吧。 set的可选参数很多,这里就先说说遇到的这几个情况吧。 1.set [-
  • update set命令用来修改表中的数据

    万次阅读 2016-08-01 16:30:00
    update set命令用来修改表中的数据。 update set命令格式:update 表名 set 字段=新值,… where 条件; 举例如下: mysql> update MyClass set name='Mary' where id=1; 例子1,单表的MySQL UPDATE...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,384,089
精华内容 553,635
关键字:

set命令