set和shopt命令

合集下载

Linux中的set命令是什么意思

Linux中的set命令是什么意思

Linux中的set命令是什么意思Linux中的set命令是什么意思你知道吗?看看下面的Linux中的set命令的详细解释吧!一、Linux中的set命令的详细解释功能说明:设置shell。

语法:set[+-abCdefhHklmnpPtuvx]补充说明:用set命令可以设置各种shell选项或者列出shell变量.单个选项设置常用的特*.在某些选项之后-o参数将特殊特*打开.在某些选项之后使用+o参数将关闭某些特*,不带任何参数的set命令将显示shell的全部变量.除非遇到非法的选项,否则set总是返回ture.参数:allexport-a从设置开始标记所有新的和修改过的用于输出的变量braceexpand-B允许符号扩展,默认选项emacs在进行命令编辑的时候,使用内建的emacs编辑器,默认选项errexit-e如果一个命令返回一个非0退出状态值(失败),就退出.histexpand-H在做临时替换的时候允许使用!和!!默认选项history允许命令行历史,默认选项ignoreeof禁止coontrol-D的方式退出shell,必须输入exit。

interactive-ments在交互式模式下,#用来表示注解keyword-k为命令把关键字参数放在环境中monitor-m允许作业控制noclobber-C保护文件在使用重新动向的时候不被覆盖noexec-n在脚本状态下读取命令但是不执行,主要为了检查语法结构。

noglob-d禁止路径名扩展,即关闭通配符notify-b在后台作业以后通知客户nounset-u在扩展一个没有的设置的变量的时候,显示错误的信息onecmd-t在读取并执行一个新的命令后退出physical-P如果被设置,则在使用pwd和cd命令时不使用符号连接的路径而是物理路径posix改变shell行为以便符合POSIX要求privileged一旦被设置,shell不再读取.profile文件和env文件shell函数也不继承任何环境verbose-v为调试打开verbose模式vi在命令行编辑的时候使用内置的vi编辑器xtrace-x打开调试回响模式二、Linux中的set命令详解实例显示环境变量#setBASH=/bin/bashBASH_ARGC=()BASH_ARGV=()BASH_LINENO=()BASH_SOURCE=()BASH_VERSINFO=([0]="3"[1]="00"[2]="15"[3]="1"[4]="rele ase"[5]="i386-redhat-linux-gnu")BASH_VERSION='3.00.15(1)-release'COLORS=/etc/DIR_COLORS.xtermCOLUMNS=99DIRSTACK=()EUID=0GROUPS=()G_BROKEN_FILENAMES=1HISTFILE=/root/.bash_historyHISTFILESIZE=1000HISTSIZE=1000HOME=/rootHOSTNAME=hnlinuxHOSTTYPE=i386IFS=$''INPUTRC=/etc/inputrcKDEDIR=/usrLANG=zh_CN.GB2312LESSOPEN='|/usr/bin/lesspipe.sh%s'LINES=34LMAIL=/var/spool/mail/rootMAILCHECK=60OLDPWD=/home/uptechOPTERR=1OPTIND=1OSTYPE=linux-gnuPATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/ usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/ bin:/opt/crosstools/gcc-3.4.6-glibc-2.3.6/binPIPESTATUS=([0]="2")PPID=26005PROMPT_COMMAND='echo-ne"三、Linux的set命令的相关扩展set、env、export——Linux中的环境变量命令Linux是一个多用户的*作系统。

linuxshellset命令详解

linuxshellset命令详解

linux shell set命令详解set命令是linux下的一个命令,那么这个命令到底有什么用处呢?下面由店铺为大家整理了set命令的相关知识,希望大家喜欢!linux shell set命令基本说明用set命令可以设置各种shell选项或者列出shell变量.单个选项设置常用的特性.在某些选项之后-o参数将特殊特性打开.在某些选项之后使用+o参数将关闭某些特性,不带任何参数的set命令将显示shell 的全部变量.除非遇到非法的选项,否则set总是返回ture.当shell被调用时,可以列出全部的选项.当前的选项集列在$-中.在option参数被处理后,其他的参数被赋值到位置参数中($1,$2,...,$n) set [--abefhkmnptuvxldCHP] [-o option name] [arguments ...] 选项说明-a 自动向已经修改的变量或为导出后序命令的变量作出标志-b 不是在原提示符之前,而是立即引发终止后台任务的状态表表-e 如果命令带非零值返回,立即退出-f 禁止带扩展名的路径-h 定义函数时,定位和存储函数命令,当函数被执行时,通常查询函数命令-k 所有的关键词参数,而不只是那些命令名前的关键词参数,被放在环境命令中-m 监视器模式,启动任务控制.此选项默认支持系统shell交互.后台进程以单独的进程组运行,在每次完成任务时显示包含退出的状态行-n 读取命令但不执行命令.通常监查shell脚本的句法错误.交互shell被忽略-o option-name 选项名可以是下列之一:选项说明allexport 同-a选项braceexpand shell执行花括号扩展,在默认情况下起作用emacs 使用emacs风格命令行编辑接口.除非shell以-noline-editing选项启动,否则当shell交互时,通过默认启动该选项errexit 同-e选项histexpand 同-H选项ignoreeof 其结果是好像shell命令IGNOREEOF=10被执行interactive 允许单词前带#号,以使得在交互shell中忽略命令行的全部字符-commandsmonitor 同-m选项noclobber 同-C选项noexec 同-n选项noglob 同-f选项nohash 同-d选项notify 同-b选项nounset 同-u选项physical 同-p选项posix 改变BASH属性以匹配标准,默认操作不同于POSIX1003.2标准verbose 同-v选项vi 使用vi风格的命令行编辑器XTRACE 同-x选项,如果没有给出选项名,显示当前选项值-p 打开特权模式(在此模式,$ENV文件被处理,不能从环境中继承shell函数.如果是有效用户ID而不是实用户组则自动启动.关闭此选项将使得有效用户和组IDs设置实用户和组IDs)-t 在读取命令并执行之后退出-u 当执行参数括展时,把非设置变量作为错误处理(如果扩展企图出现在非设置变量中,shell显示错误信息.如果不是交互式,则带非凌值退出)-v 输入行被读取时,显示shell输入行-x 在每个简单命令被扩展之后,显示PS4扩展值,之后是要执行的命令-l 保存和恢复绑定在命令中的名称-d 禁止执行查找散列命令(通常,命令被保存在散列表中,一旦被找到就不再继续查找)-C 效果好像是执行了noclobber=shell命令-H 使用!风格的历史替代(当shell交互时,在默认情况下,此选项有效)-P 如果设置此参数,当执行改变目录命令cd时,不遵循符号链接,而是使用实际的目录如果在选项后没有参数,不设置位置参数.否则,即使一些参数以a选项开始,也要把位置参数设置为argument- 结束选项的信号,将引发其余的参数被赋值到位置参数中(-x和-v选项被关闭.如果没有argument,位置参数将保留未改变的参数)。

cmd中set的用法

cmd中set的用法

cmd中set的用法cmd 是Windows 操作系统中的一个命令行工具,通过cmd 可以执行各种命令来操作计算机。

在cmd 中,set 命令是一个非常重要的命令,用于设置环境变量、系统参数等。

本文将详细介绍cmd 中set 命令的用法、常用参数及其实战应用。

1.cmd中set命令的概述在cmd 中,set 命令用于设置环境变量和系统参数。

它可以修改当前目录、设置变量值、设置选项等。

set 命令的基本语法如下:```set 参数名参数值```例如,设置一个名为MYVAR 的环境变量,可以使用以下命令:```set MYVAR=HelloWorld```2.set命令的常用参数和功能- 环境变量:可以使用set 命令设置和修改环境变量,如设置MYVAR 环境变量。

- 设置选项:可以使用set 命令设置命令执行选项,如设置调试符号(DEBUG)等。

- 修改当前目录:可以使用set 命令修改当前目录,如设置当前目录为C:UsersUsernameDocuments。

- 设置变量值:可以使用set 命令为变量赋值,如设置COUNT=0。

3.set命令的实战应用- 在编程过程中,可以使用set 命令设置环境变量,以便程序正常运行。

- 在批处理文件中,可以使用set 命令设置变量和选项,实现自动化操作。

- 在命令行界面中,可以使用set 命令修改当前目录,方便文件操作。

4.注意事项和技巧- set 命令设置的环境变量仅在当前cmd 窗口生效,关闭窗口后需重新设置。

- 设置变量时,变量名不能有空格,但可以包含字母、数字和下划线。

- 设置选项时,请注意选项间的优先级关系,较低级别的选项会被较高级别的选项覆盖。

- 在设置变量和选项时,可以使用简写形式,如set DEBUG=1 等。

总之,set 命令在cmd 中具有非常重要的地位,掌握其用法和实战应用,可以提高cmd 命令行的操作效率。

python中set的用法和作用

python中set的用法和作用

python中set的用法和作用
在Python中,set是一种无序且元素不重复的数据结构。

它可以用来存储一组唯一的元素,类似于数学中的集合概念。

在Python 中,set使用花括号{}来表示,其中的元素之间用逗号分隔。

set的主要作用之一是用于去除列表中重复的元素。

通过将一个列表转换为set,然后再转换回列表,就可以轻松去除重复的元素。

这在需要对数据进行去重操作时非常有用。

另外,set还可以用于数学运算,如并集、交集、差集等。

通过使用set提供的方法,可以方便地进行这些集合运算。

例如,可以使用union()方法求两个集合的并集,intersection()方法求两个集合的交集,difference()方法求两个集合的差集等。

此外,set还可以用于快速判断一个元素是否属于某个集合,因为set内部使用了哈希表来存储元素,所以判断元素是否存在的速度非常快。

需要注意的是,由于set是无序的,所以不能像列表一样通过索引来访问元素。

另外,由于set内部的元素不重复,所以不能向
set中添加重复的元素。

总之,set在Python中具有去除重复元素、集合运算和快速判断元素是否存在等作用,是一个非常实用的数据结构。

批处理:set命令详解

批处理:set命令详解

set [[/a [expression]] [/p [variable=]] string]参数/a将string 设置成可求值的数字表达式。

/p将variable 的值设置成输入行。

variable指定需要设置或修改的变量。

string指定要与指定变量关联的字符串。

/?在命令提示符显示帮助。

注释使用“恢复控制台”中的setset 命令具有不同的参数,可从“恢复控制台”中获得。

使用特殊字符字符< > | & ^ 是特殊命令外壳字符,在字符串中使用时必须位于escape 字符(^) 之前或用引号引起来(即,"StringContaining&Symbol")。

如果要使用引号将含有特殊字符的字符串引起来,则该引号将被设置成环境变量值的一部分。

使用环境变量使用环境变量可控制某些批处理文件和程序的操作,并可控制Windows XP 和MS-DOS 子系统显示和工作的方式。

Autoexec.nt 文件中经常使用set 命令设置环境变量。

显示当前的环境设置当只键入set 命令时,将显示当前的环境设置。

这些设置通常包含用来帮助查找磁盘上程序的COMSPEC 和PATH 环境变量。

Windows XP 使用的两个其它环境变量是PROMPT 和DIRCMD。

使用参数当指定变量和字符串的值时,指定的变量值将被添加到该环境,而且该字符串与该变量关联。

如果环境中已经存在该变量,新的字符串值将替代旧的字符串值。

如果只为set 命令指定一个变量和一个等号(没有字符串),则与该变量关联的字符串值将被清除(就象变量根本不存在一样)。

使用/a下表按优先性从高到低的顺序列出了支持/a 的运算符。

运算符执行的操作< > 分组* / % + - 算法<< >> 逻辑移位& 按位“和”运算^ 按位“异或”运算| 按位“或”运算= *= /= %= += -= &= ^= |= <<= >>= 分配, 表达式分隔符如果使用逻辑(&& ||) 或模(%) 运算符,请使用引号将表达式字符串引起来。

批处理Set命令详解让你理解set命令

批处理Set命令详解让你理解set命令

批处理Set命令详解让你理解set命令set,E文翻译过来就是“设置”的意思,相当于数学里的“令”。

如:set X=5,就是令X=5的意思。

set的通常用法示例:1、set 显示环境变量:如:在命令行下输入:set 会显示当前所有的系统环境变量set c 会显示所有的以c开头或C开头的变量(也即不区分大小写);set com 会显示所有的以com开头或COM开头的变量(不区分大小写);2、set 设置环境变量,用法示例:set 表达式,如:set str=ok就是将变量str的值设置成字符串“OK”注意:set str=ok>这个在批处理运行过程中会出错,系统会提示:“命令语法不正确。

”原因是,因为变量str 中的值“ok>”的字符">"为一特殊字符,会被系统当成定向符处理,所以会运行出错,那如果确实要设置这样的变量str,值为"ok>"怎么办呢?解决办法有二:将特殊字符转义,转义方法在该特殊字符前加一个“^”,如:set str=ok^> (这种方法比较少用,因为没有多少应用价值)常见的解决办法,在set后面将整个表达式用引号括起来,如:set "str=>"3、带参数 /a的set 数值计算set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算! 支持的数学运算包含(优先权递减):() - 分组! ~ - - 一元运算符* / % - 算数运算符+ - - 算数运算符<< >> - 逻辑移位& - 按位“与”^ - 按位“异”| - 按位“或”= *= /= %= += -= - 赋值&= ^= |= <<= >>=, - 表达式分隔符用法示例:set /a num=2*10,这样变量num的值将变为:20复制代码代码如下:set /a var=2 - 1 结果是多少呢?如果你看不到结果就echo %var%.....set /a var=2 * 2 乘法运算set /a var=2 / 2 除法运算set /a var=(1+1) + (1+1) 结果等于4 看得懂吧!set /a a=1+1,b=2+1,c=3+1 运行后会显示一个4,但我们用echo %a% %b% %c%后看结果,会发现其他数学运算也有效果!,这就是"斗"号的作用!有时候我们需要直接在原变量进行加减操作就可以用这种语法set /a var+=1 这样的语法对应原始语法就是set /a var = %var% + 1都是一样的结果。

set命令

set命令

set命令.txt如果真诚是一种伤害,请选择谎言;如果谎言是一种伤害,请选择沉默;如果沉默是一种伤害,请选择离开。

set命令详解一、用set命令设置自定义变量显示、设置或删除 cmd.exe 环境变量。

SET [variable=[string]]variable 指定环境变量名。

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

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

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

例子:@echo offset var=我是值echo %var%pause请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法!set 是命令 var是变量名 =号右边的"我是值"是变量的值在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var%SET还可以提供一个交互界面,让用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说SET的这种语法,只需要加一个"/P"参数就可以了! SET /P variable=[promptString]例子:@echo offset /p var=请输入变量的值:echo 您输入了 %var% ~_~pauseset /p 是命令语法 var是变量名 =号右边的"请输入变量的值: ",这个是提示语,不是变量的值了!运行后,我们在提示语后面直接输入1,就会显示一行您输入了 1 ~_~好了,先回顾到这,现在讲SET其他功能使用set /?查看SET的帮助我们发现SET除了我上面讲的SET [variable=[string]]SET /P variable=[promptString]这两种语法外,还有如下几种语法:SET /A expression环境变量替换已如下增强:%PATH:str1=str2%%PATH:~10,5%%PATH:~-10%%PATH:~0,-2%这机种语法有什么用处呢?下面我们来一个个讲解他们!二、用set命令进行简单计算语法:SET /A expression/A 命令行开关指定等号右边的字符串为被评估的数字表达式。

windows set 命令 用法

windows set 命令 用法

windows set 命令用法Set 命令是 Windows 操作系统中一个非常实用的工具,它用于设置或修改系统的各种配置参数。

通过使用 Set 命令,您可以轻松地更改系统设置,以满足您的需求或解决遇到的问题。

一、基本用法1. 打开命令提示符:首先,您需要打开命令提示符窗口。

在 Windows 系统中,可以按下 Win+R 键,输入 "cmd",然后按回车键。

2. 输入 Set 命令:在命令提示符窗口中,输入 "set" 命令,然后按回车键。

这将显示当前系统设置的相关信息。

3. 设置新值:如果要修改设置,请使用 Set 命令后跟参数和新的值。

例如,要设置一个名为 "DebugLevel" 的新值,可以输入 "set DebugLevel=2"(假设您要将 DebugLevel 的值设置为 2)。

4. 保存设置:要使更改生效,您需要保存这些设置。

您可以使用 "save" 参数将更改保存到注册表中。

例如,"set save=1" 将把 DebugLevel 的新值保存到注册表中。

二、常用选项和参数Set 命令有很多选项和参数,可以帮助您更精确地设置或修改系统配置。

以下是一些常用的选项和参数:* "all":显示所有系统设置。

* "path":显示或设置环境变量路径。

* "registry":显示或编辑注册表项。

* "save":保存当前设置到注册表。

* "remove":从注册表中删除指定的键或值。

* "newvalue":为指定的键设置新的值。

三、示例以下是一些使用 Set 命令的示例:1. 设置环境变量:要设置环境变量 "PATH",可以输入 "setPATH=%PATH%;C:\new_folder",这将把 "C:\new_folder" 添加到 PATH 环境变量中。

linux set命令及其作用

linux set命令及其作用

linux set命令及其作用
在Linux系统中,set命令是一个非常有用的工具,它可以用
来设置和显示环境变量。

环境变量是一种在操作系统中存储信息的
机制,它们可以影响程序的行为和输出。

set命令可以帮助用户管
理和控制这些环境变量,以便在系统中执行命令和程序时能够达到
预期的效果。

set命令的主要作用包括:
1. 显示环境变量,使用set命令可以显示当前系统中所有的环
境变量及其取值。

这对于了解系统的当前配置和调试问题非常有用。

2. 设置环境变量,通过set命令可以为当前会话设置新的环境
变量或修改已有的环境变量的取值。

这可以在临时改变系统行为或
者为特定程序提供定制的环境变量配置。

3. 清除环境变量,使用set命令还可以清除指定的环境变量,
或者清除所有的环境变量。

这在需要重置环境变量状态时非常有用。

举例来说,如果我们想要设置一个名为MY_VAR的环境变量,其
取值为"hello",我们可以使用以下命令:
set MY_VAR=hello.
如果我们想要显示所有的环境变量,可以使用以下命令:
set.
如果我们想要清除一个名为MY_VAR的环境变量,可以使用以下命令:
set MY_VAR=。

总之,set命令是一个非常有用的工具,它可以帮助用户管理和控制Linux系统中的环境变量,从而更好地定制系统行为和调试程序。

通过合理使用set命令,用户可以更好地利用Linux系统的强大功能,提高工作效率。

linux 中set用法

linux 中set用法

linux 中set用法一、概述在Linux系统中,set是一个用于设置环境变量的命令行工具。

它允许用户指定一组环境变量并将其设置为特定的值。

通过使用set 命令,用户可以在shell会话中临时更改环境变量的值,并观察它们对当前shell的影响。

二、基本用法1.命令格式:set[选项][变量名=值]2.选项:set命令支持一些常用的选项,如-a(添加变量)、-u (删除变量)、-x(显示临时设置的变量)等。

3.变量名和值:在set命令中,可以使用空格分隔变量名和值。

变量名通常为字符串类型,而值可以是任何有效的字符串或数字。

三、示例用法1.设置环境变量:```bash$setFOO=bar#设置FOO环境变量为bar$echo$FOO#输出环境变量值,确认设置成功bar```2.临时删除环境变量:```bash$set-uFOO#删除环境变量FOO$echo$FOO#输出环境变量值,确认FOO不存在$echo$FOO=#输出空行,说明FOO环境变量已被删除```3.显示临时设置的变量:```bash$set-x#显示临时设置的变量及其值FOO=bar#临时设置的变量和值将在此处显示```四、注意事项1.set命令只对当前shell会话有效,会话结束后设置将失效。

2.环境变量的更改不会永久保存到系统中,需要手动设置对应的系统级别环境变量。

3.set命令不会影响其他已存在的shell会话中的环境变量。

4.set命令适用于大多数Linux发行版和shell环境,但具体用法可能因发行版和shell版本而异。

建议参考相关文档或手册页以获取更详细的信息。

五、其他相关命令除了set命令外,还有其他一些与环境变量相关的命令,如export、setenv等。

这些命令可用于永久设置环境变量或管理多个shell会话中的环境变量。

具体用法可以参考相关文档或手册页。

linux的set命令详解

linux的set命令详解

linux的set命令详解linux下set命令的主要作用是显示系统中以及存在的shell变量,下面由店铺为大家整理了linux下set命令详解的相关知识,希望对大家有帮助!linux的set命令详解set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。

使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。

set命令不能够定义新的shell变量。

如果要定义新的变量,可以使用declare命令以变量名=值的格式进行定义即可。

语法set(选项)(参数)选项-a:标示已修改的变量,以供输出至环境变量。

-b:使被中止的后台程序立刻回报执行状态。

-C:转向所产生的文件无法覆盖已存在的文件。

-d:Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。

使用-d参数可取消。

-e:若指令传回值不等于0,则立即退出shell。

-f:取消使用通配符。

-h:自动记录函数的所在位置。

-H Shell:可利用"!"加<指令编号>的方式来执行history中记录的指令。

-k:指令所给的参数都会被视为此指令的环境变量。

-l:记录for循环的变量名称。

-m:使用监视模式。

-n:只读取指令,而不实际执行。

-p:启动优先顺序模式。

-P:启动-P参数后,执行指令时,会以实际的文件或目录来取代符号连接。

-t:执行完随后的指令,即退出shell。

-u:当执行时使用到未定义过的变量,则显示错误信息。

-v:显示shell所读取的输入值。

-x:执行指令后,会先显示该指令及所下的参数。

参数取消某个set曾启动的参数。

linux的set命令实例使用declare命令定义一个新的环境变量"mylove",并且将其值设置为"Visual C++",输入如下命令:declare mylove='Visual C++' #定义新环境变量再使用set命令将新定义的变量输出为环境变量,输入如下命令:set -a mylove #设置为环境变量执行该命令后,将会新添加对应的环境变量。

bash内部命令

bash内部命令
* unalias: 删除别名.
* unset: 删除一个变量或者函数.
* wait: 等待后台进程的结束.
简单应用描述:
: [arguments]
不做任何事,除了[arguments]一些参数展开及一些特定重导向的作业外。永远返回零,它的用法跟true一样。
*************************
bash命令解释套装程序包含了一些内部命令。
内部命令在目录列表时是看不见的,它们由Shell本身提供。
常用的内部命令有:echo, eval, exec, export, readonly, read, shift, wait和点(.)。下面简单介绍其命令格式和功能。
1.echo
命令格式:echo arg
如果给定jobspec,输出资讯则只有该jobspec。
返回值为零,除非有非法的选项发生。
jobs -x command [ args ... ]
如果使用第二种形式(-x),jobs取代指定的command及args,并执行返回其Exit Status。
*************************
kill -l [signum]
列出信号名称。
[foxman@foxman bash]# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGIOT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD

set命令详解

set命令详解

SQL*PLUS维护系统变量,也称SET变量,利用它可为SQL*PLUS交互建立一个特殊的环境,如:设置NUMBER数据的显示宽度;设置每页的行数;设置列的宽度等。

可用SET命令改变这些系统变量,也可用SHOW命令列出它们.使用set命令的语法如下:SET 系统变量值其中系统变量及其可选值如下:ARRAY[SIZE] {20(默认值)|n}AUTO[COMMIT] {OFF(默认值)|ON|IMM[EDIATE]}BLO[CKTERMINATOR] {.(默认值)|C}CMDS[EP] {;|C|OFF(默认值)|ON}COM[PATIBILITY] {V5|V6|V7|NATIVE(默认值)}CON[CAT] {.(默认值)|C|OFF|ON(默认值)}COPYC[OMMIT] {0(默认值)|n}CRT crtDEF[INE] {&|C|OFF|ON(默认值)}ECHO {OFF|ON}EMBEDDED {OFF(默认值)|ON}ESC[APE] {\(默认值)|C|OFF(默认值)|ON}FEED[BACK] {6(默认值)|n|OFF|ON}FLU[SH] {OFF|ON(默认值)}HEA[DING] {OFF|ON(默认值)}HEADS[EP] {|(默认值)|C|OFF|ON(默认值)}LIN[ESIZE] {80(默认值)|n}LONG {80(默认值)|n}LONGC[HUNKSIZE] {80(默认值)|n}MAXD[ATA] nNEWP[AGE] {1(默认值)|n}NULL textNUMF[ORMAT] 格式NUM[WIDTH] {10(默认值)|n}PAGES[IZE] {14(默认值)|n}PAU[SE] {OFF(默认值)|ON|text}RECSEP {WR[APPED](默认值)|EA[CH]|OFF}RECSEPCHAR { |C}SCAN {OFF|ON(默认值)}SERVEROUT[PUT] {OFF|ON} [SIZE n]SHOW[MODE] {OFF(默认值)|ON}SPA[CE] {1(默认值)|n}SQLC[ASE] {MIX[ED](默认值)|LO[WER]|UP[PER]}SQLCO[NTINUE] {>;(默认值)|文本}SQLN[UMBER] {OFF|ON(默认值)}SQLPER[FIX] {#(默认值)|C}SQLP[ROMPT] {SQL>;(默认值)|文本}SQLT[ERMINATOR] {;(默认值)|C|OFF|ON(默认值)}SUF[FIX] {SQL(默认值)|文本}TAB {OFF|ON(默认值)}TERM[OUT] {OFF|ON(默认值)}TI[ME] {OFF(默认值)|ON}TIMI[NG] {OFF(默认值)|ON}TRIM[OUT] {OFF|ON(默认值)}UND[ERLINE] {-(默认值)|C|OFF|ON(默认值)}VER[IFY] {OFF|ON(默认值)}WRA[P] {OFF|ON(默认值)}系统变量说明:ARRAY[SIZE] {20(默认值)|n} 置一批的行数,是SQL*PLUS一次从数据库获取的行数,有效值为1至5000. 大的值可提高查询和子查询的有效性,可获取许多行,但也需要更多的内存.当超过1000时,其效果不大.AUTO[COMMIT] {OFF(默认值)|ON|IMM[EDIATE]} 控制ORACLE对数据库的修改的提交. 置ON时,在ORACLE 执行每个SQL命令或PL/SQL块后对数据库提交修改;置OFF时则制止自动提交,需要手工地提交修改,例如用SQL的COMMIT命令. IMMEDIATE功能同ON.BLO[CKTERMINATOR] {.(默认值)|C} 置非字母数字字符,用于结束PL/SQL块.要执行块时,必须发出RUN 命令或/命令.CMDS[EP] {;|C|OFF(默认值)|ON} 置非字母数字字符,用于分隔在一行中输入的多个SQL/PLUS命令.ON 或OFF控制在一行中是否能输入多个命令. ON时将自动地将命令分隔符设为分号(;).其中C表示所置字符.COM[PATIBILITY] {V5|V6|V7|NATIVE(默认值)} 指定当前所链接的ORACLE版本.如果当前ORACLE的版本为5,则置COMPATIBILITY为V5; 为版本6时置成V6; 为版本7时置成V7. 如果希望由数据库决定该设置,在置成NATIVE.CON[CAT] {.(默认值)|C|OFF|ON(默认值)}设置结束一替换变量引用的字符.在中止替换变量引用字符之后可跟所有字符,作为体会组成部分,否则SQL*PLUS将解释为替换变量名的一部分.当CONCAT开关为ON 时,SQL*PLUS可重置CONCAT的值为点(.).COPYC[OMMIT] {0(默认值)|n} 控制COPY命令提交对数据库修改的批数.每次拷贝n批后,将提交到目标数据库.有效值为0到5000. 可用变量ARRAYSIZE设置一批的大小.如果置COPYCOMMIT为0,则仅在COPY操作结束时执行一次提交.CRT crt 改变SQL*PLUS RUNFORM命令使用的缺省CRT文件.如果置CRT不包含什么,则crt仅包含''''.如果在一个Form的系统调用期间,要使用NEW.CRT(缺省CRT是OLD.CRT),可按下列形式调用Form:SQL>;RUNFORM -C NEW form名或者SQL>;SET CRT NEWSQL>;RUNFORM form名第二中方法存储CRT选择,以致在下次运行RUNFORM命令(是在同一次SQL*PLUS交互中)时,不需要指定.DEF[INE] {&|C|OFF|ON(默认值)} 设置在替换变量时所使用的字符.ON或OFF控制SQL*PLUS是否扫描替换变量的命令及用他们的值代替. DEFINE的ON或OFF的设置控制SCAN变量的设置.ECHO {OFF|ON} 控制START命令是否列出命令文件中的每一命令.为ON时,列出命令;为OFF时,制止列清单.EMBEDDED {OFF(默认值)|ON} 控制每一报表在一页中开始的地方. 为OFF时,迫使每一报表是在新页的顶部开始;为ON时,运行一报表在一页的任何位置开始.ESC[APE] {\(默认值)|C|OFF(默认值)|ON} 定义作为Escape字符的字符.为OFF时,使Escape字符不起作用.为ON时,使Escape字符起作用.FEED[BACK] {6(默认值)|n|OFF|ON} 显示由查询返回的记录数.ON和OFF置显示为开或关.置FEEDBACK 为ON时,等价于置n为1. 如果置FEEDBACK为0,等价于将它置成OFF.FLU[SH] {OFF|ON(默认值)} 控制输出送至用户的显示设备.为OFF时,运行操作系统做缓冲区输出;为ON 时,不允许缓冲. 仅当非交互方式运行命令文件时使用OFF,这样可减少程序I/O总是,从而改进性能.HEA[DING] {OFF|ON(默认值)} 控制报表中列标题的打印.为ON时,在报表中打印列标题;为OFF时禁止打印列标题.HEADS[EP] {|(默认值)|C|OFF|ON(默认值)} 定义标题分隔字符.可在COLUMN命令中使用标题分隔符,将列标题分成多行.ON和OFF将标题分隔置成开或关.当标题分隔为关(OFF)时,SQL*PLUS打印标题分隔符像任何字符一样.LIN[ESIZE] {80(默认值)|n} 置SQL*PLUS在一行中显示的字符总数,它还控制在TTITLE和BTITLE中对准中心的文本和右对齐文本. 可定义LINESIZE为1至最大值,其最大值依赖于操作系统.LONG {80(默认值)|n} 为显示和拷贝LONG类型值的最大宽度的设置. 对于ORACLE7, n的最大值为2G字节;对于版本6,最大值为32767.LONGC[HUNKSIZE] {80(默认值)|n} 为SQL*PLUS检索LONG类型值的增量大小.由于内存的限制,可按增量检索,该变量仅应用于ORACLE7.MAXD[ATA] n 置SQL*PLUS可处理的最大行宽字符数,其缺省值和最大值在不同操作系统中是可变的.NEWP[AGE] {1(默认值)|n} 置每一页的头和顶部标题之间要打印的空行数.如果为0, 在页之间送一换号符,并在许多终端上清屏.NULL text 设置表示空值(null)的文本,如果NULL没有文本,则显示空格(缺省时). 使用COLUMN命令中的NULL子句可控制NULL变量对该列的设置.NUMF[ORMAT] 格式设置显示数值的缺省格式,该格式是数值格式.NUM[WIDTH] {10(默认值)|n} 对显示数值设置缺省宽度.PAGES[IZE] {14(默认值)|n} 置从顶部标题至页结束之间的行数.在11英寸长的纸上打印报表,其值为54,上下各留一英寸(NEWPAGE值为6).PAU[SE] {OFF(默认值)|ON|text} 在显示报表时,控制终端滚动.在每一暂停时,必须按RETURN键.ON将引起SQL*PLUS在每一报表输出页开始时暂停.所指定的文本是每一次SQL*PLUS暂停时显示的文本.如果要键入多个词,必须用单引号将文本括起来.RECSEP {WR[APPED](默认值)|EA[CH]|OFF}RECSEPCHAR { |C} 指定显示或打印记录分行符的条件.一个记录分行符,是由RECSEPCHAR指定的字符组成的单行.空格为RECSEPCHAR的默认字符.RECSEP告诉SQL*PLUS在哪儿做记录分隔.例如将RECSEP置成WRAPPED,在每一缠绕行之后,打印记录分行符.如果将RECSEP置成EACH,SQL*PLUS在每一行后打印一记录分行符.如果将RECSEP置成OFF, SQL*PLUS 不打印分行符.SCAN {OFF|ON(默认值)} 控制对存在的替换变量和值的扫描.OFF禁止替换变量和值的处理; ON则允许正常处理.SERVEROUT[PUT] {OFF|ON} [SIZE n] 控制在SQL*PLUS中的存储过程是否显示输出.OFF时为禁止; ON时则显示输出. SIZE设置缓冲输出的字节数,缺省值为2000, n不能小于2000或大于一百万.SHOW[MODE] {OFF(默认值)|ON} 控制SQL*PLUS在执行SET命令时是否列出其新老值old或new的设置.SPA[CE] {1(默认值)|n} 设置输出列之间空格的数目,其最大值为10.SQLC[ASE] {MIX[ED](默认值)|LO[WER]|UP[PER]} 先于执行之前,将SQL命令和PL/SQL块的大小写进行转换. SQL*PLUS将转换命令中的全部文本,包括带引号的直接量和标示符.SQLCASE不改变SQL缓冲区本身.SQLCO[NTINUE] {>;(默认值)|文本} 在一附加行上继续一SQL*PLUS命令时,SQL*PLUS以该设置的字符序列进行提示.SQLN[UMBER] {OFF|ON(默认值)} 为SQL命令和PL/SQL块的第二行和后继行设置提示.为ON时,提示行号;为OFF时,提示设置为SQLPROMPT的值.SQLPER[FIX] {#(默认值)|C} 设置SQL*PLUS前缀字符.在键入一SQL命令或PL/SQL块时,可在单独行上键入一SQL*PLUS命令,由SQL*PLUS的前缀字符做前缀. SQL*PLUS直接执行该命令,不影响SQL命令或PL/SQL块.前缀字符必须是非字母数字字符.SQLP[ROMPT] {SQL>;(默认值)|文本} 设置SQL*PLUS的命令提示符.SQLT[ERMINATOR] {;(默认值)|C|OFF|ON(默认值)} 设置用于结束和执行SQL命令的字符. OFF意味着SQL*PLUS不识别命令终止符,用键入空行来结束SQL命令. ON重设置终止符为默认的分号(;).SUF[FIX] {SQL(默认值)|文本} 设置缺省文件的后缀,SQL*PLUS在命令中使用,来引用命令文件. SUFFIX 不控制输出(spool)文件的扩展名.TAB {OFF|ON(默认值)} 决定SQL*PLUS在终端输出中如何格式化空白空间. 为OFF时,在输出中使用空格格式化空白空间;为ON时,用TAB字符. TAB的缺省值依赖于系统,用SHOW TAB命令可查看该缺省值.TERM[OUT] {OFF|ON(默认值)} 控制由文件执行命令所产生的输出的显示. OFF禁止显示,以致从一个命令文件假脱机输出,在屏幕上看不到输出. ON时显示输出. TERMOUT OFF 不影响交互地进行命令的输出.TI[ME] {OFF(默认值)|ON} 控制当前日期的显示. ON时,在每条命令提示前显示当前时间; OFF时禁止时间的显示.TIMI[NG] {OFF(默认值)|ON} 控制时间统计的显示. ON时,显示每一个运行的SQL命令或PL/SQL块的时间统计; OFF时,禁止每一个命令的时间统计.TRIM[OUT] {OFF|ON(默认值)} 决定SQL*PLUS在每一显示行的末端是否允许带空格. ON时将每行尾部的空格去了,特别当从慢速的通信设备存取SQL*PLUS时可改进性能; OFF时允许SQL*PLUS显示尾部的空格.TRIMOUT ON 不影响假脱机输出. 设置TAB ON时,SQL*PLUS忽略TRIMOUT ON.UND[ERLINE] {-(默认值)|C|OFF|ON(默认值)} 设置用在SQL*PLUS报表中下划线列标题的字符. ON或OFF将下划线置成开或关.VER[IFY] {OFF|ON(默认值)} 控制SQL*PLUS用值替换前、后是否列出命令的文本. ON时显示文本;OFF 时禁止列清单.WRA[P] {OFF|ON(默认值)} 控制SQL*PLUS是否截断数据项的显示. OFF时截断数据项;ON时允许数据项缠绕到下一行. 在COLUMN命令中使用WRAPPED和TRUNCATED子句可控制对指定列的WRAP的设置.set colsep' ';//-域输出分隔符set echo off;//显示start启动的脚本中的每个sql命令,缺省为onset echo on //设置运行命令是是否显示语句set feedback on; //设置显示“已选择XX行”set feedback off;//回显本次sql命令处理的记录条数,缺省为onset heading off;//输出域标题,缺省为onset pagesize 0;//输出每页行数,缺省为24,为了避免分页,可设定为0。

写批处理必备的一些命令参数使用技巧

写批处理必备的一些命令参数使用技巧

写批处理必备的一些命令参数使用技巧批处理是一种在Windows操作系统中用来批量处理一系列命令的脚本语言。

使用批处理可以实现自动化执行一系列操作,提高工作效率和减少重复性劳动。

以下是一些批处理中必备的命令参数使用技巧,供参考:1. echo命令echo命令用于在命令行中输出文字或变量的值。

使用echo命令时可以使用“>>”将输出内容追加到文件的末尾,或使用“>”将输出内容覆盖到文件中。

2. set命令set命令用于设置一个变量,也可以用于查看或删除已存在的变量。

例如,可以使用set命令将一个命令的输出结果赋值给一个变量,然后在后面的命令中使用该变量。

3. if命令if命令可以执行条件判断,根据不同的条件执行不同的操作。

常见的用法包括判断文件是否存在、判断变量的值等。

4. for命令for命令用于对一系列对象(如文件、变量列表等)进行循环操作。

常见的用法包括遍历目录中的文件、遍历数组等。

5. goto命令6. call命令call命令用于调用外部的命令或脚本,并在调用完成后返回到当前批处理中。

使用call命令可以将一个脚本文件拆分成多个子脚本,提高代码的复用性。

7. start命令start命令用于启动一个新的窗口来执行指定的命令或程序。

可以使用start命令来实现并行执行多个命令或程序。

8. shift命令shift命令用于移动批处理脚本中的参数位置。

使用shift命令可以在循环中逐个处理命令行参数,而不需要手动指定每个参数。

9. choice命令choice命令用于在命令行中提供多个选项供用户选择。

使用choice 命令可以实现交互式的批处理脚本。

11. setlocal和endlocal命令setlocal和endlocal命令用于创建和销毁一个局部环境变量。

使用setlocal命令可以在批处理脚本中创建一个局部环境,在其中定义的变量在脚本执行完毕后会自动销毁。

12. pushd和popd命令pushd和popd命令用于在命令行中切换当前目录。

linux set 命令用法

linux set 命令用法

在Linux中,`set`命令用于显示并设置shell和Linux的环境变量。

其基本语法为:`set[options] [arguments]`。

其中,`options`是可选的,代表设置命令的标志,比如:
* `-u`:启用严格模式,如果使用未定义的变量则会报错。

* `+u`:禁用严格模式,即使使用未定义的变量也不会报错。

* `-e`:启用错误检查模式,如果命令执行失败则立即退出脚本。

* `+e`:禁用错误检查模式,即使命令执行失败也会继续执行脚本。

`arguments`是位置参数,可以是一起按顺序进行赋值的变量,如`$1`、`$2`、`$3`等。

下面列举几个常见的`set`命令用法:
1. `set -x`:打印出正在执行的每一个命令,对于调试脚本非常有用。

2. `set -e`:当任何一条命令执行失败时退出脚本。

3. `set -u`:当尝试使用未定义的变量时,脚本将抛出错误并退出。

4. `set -f`:关闭文件名生成,即禁止将特殊字符解释为文件名。

5. `set -n`:在执行任何命令之前先读取输入,这有助于检测语法错误。

6. `set PATH=$PATH:/new/path`:添加新路径到环境变量PA TH中。

7. `set V AR=value`:设置一个环境变量V AR,并将其值设为value。

如果该环境变量不存在,将创建一个新的环境变量。

需要注意的是,不同的shell可能有不同的`set`命令选项和用法,
具体可查看相关文档或使用`man set`命令来了解更多信息。

Set常用命令

Set常用命令

Set常⽤命令Set常⽤命令sadd key member1 member2 往集合中存⼊元素,元素存在则忽略srem key member 删除集合中的元素smembers key 获取集合key中的所有元素scard key 获取集合key的元素个数sismember key member 判断member元素是否存在于集合key中srandmember key count 从集合中选出count个元素,元素不从key中删除spop key count 从集合中选出count个元素,元素从key中删除Set运算操作sinter key1 key2 ... 交集运算sinerstore destination key1 key2... 将交集结果存⼊新集合中sunion key1 key2... 并集运算sunionstore destination key1 key2... 将并集结果存⼊新集合中sdiff key1 key2... 差集运算,将key1中,其他key没有的元素返回sdiffstore destination key1 key2... 差集运算,将key1中,其他key没有的元素存⼊新集合中Set应⽤场景微信抽奖⼩程序1. 点击参与抽奖 sadd choujiang ssy2. 查看所有参与抽奖⽤户 smembers choujiang3. 抽取count名中奖者 srandmember choujiang 24. 或者 spop choujiang 2微信微博点赞,收藏,标签1. 点赞 sadd lke ssy2. 取消点赞 srem like ssy3. 查⽤户是否点过赞 sismember like ssy4. 获取点赞的⽤户列表 smembers like5. 获取点赞的⽤户数 scard like集合操作1. 集合操作实现微博微信关注模型2. 集合操作实现电商商品筛选。

set命令详解

set命令详解

set命令详解set 命令详解显示、设置或删除cmd.exe 环境变量。

SET [variable=[string]]variable 指定环境变量名。

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

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

如果命令扩展被启用,SET 会如下改变:可仅用一个变量激活SET 命令,等号或值不显示所有前缀匹配SET 命令已使用的名称的所有变量的值。

例:SET P会显示所有以字母P打头的变量如果在当前环境中找不到该变量名称,SET 命令将把ERRORLEVEL设置成1。

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

在SET 命令中添加了两个新命令行开关:SET /A expressionSET /P variable=[promptString]/A命令行开关指定等号右边的字符串为被评估的数字表达式。

除十六进制有0x 前缀,八进制有0 前缀的,数字值为十进位数字。

因此,0x12 与18 和022 相同。

请注意八进制公式可能很容易搞混: 08 和09 是无效的数字,因为8 和9 不是有效的八进制位数。

/P 命令行开关允许将变量数值设成用户输入的一行输入。

读取输入行之前,显示指定的promptString。

promptString 可以是空的。

%PA TH:~10,5%会扩展PA TH 环境变量,然后只使用在扩展结果中从第11 个(偏移量10)字符开始的五个字符。

如果没有指定长度,则采用默认值,即变量数值的余数。

如果两个数字(偏移量和长度)都是负数,使用的数字则是环境变量数值长度加上指定的偏移量或长度。

%PA TH:~-10%会提取PA TH 变量的最后十个字符。

%PA TH:~0,-2%会提取PA TH 变量的所有字符,除了最后两个。

如果命令扩展被启用,有几个动态环境变量可以被扩展,但不会出现在SET 显示的变量列表中。

每次变量数值被扩展时,这些变量数值都会被动态计算。

如果用户用这些名称中任何一个定义变量,那个定义会替代下面描述的动态定义:%CD% - 扩展到当前目录字符串。

linux 中set用法 -回复

linux 中set用法 -回复

linux 中set用法-回复Linux 中的set 命令是一个非常有用的工具,它可以用来设置和显示环境变量,以及进行其他一些有关shell 的配置。

在本文中,我们将一步一步地讨论set 命令的用法和功能。

首先,让我们来了解一下set 命令的基本用法。

在Linux 终端中,键入set 命令将显示当前的环境变量列表。

环境变量是一些由shell 管理的特殊变量,它们对系统的正常运行至关重要。

例如,PATH 是一个环境变量,它定义了系统搜索可执行文件的路径。

让我们尝试一下,键入set 命令并查看结果:set你将看到一长串以"VARNAME=value" 形式显示的环境变量。

如果你想只显示某个特定的环境变量,你可以使用grep 命令来过滤结果。

例如,如果你只想查看PATH 环境变量的值,你可以运行以下命令:set grep PATH下面让我们讨论一下set 命令的一些常用选项和参数。

1. -e 或者errexit: 这个选项告诉shell 在执行命令时,如果存在错误则立即停止执行。

这对于脚本编程非常有用,因为它可以帮助我们捕获错误并进行相应的处理。

例如,你可以使用以下命令来确保脚本在任何错误发生时立即停止执行:set -e2. -u 或者nounset: 这个选项告诉shell 在使用未定义的变量时抛出错误。

这对于排除拼写错误和其他常见错误非常有用。

例如,你可以使用以下命令启用这个选项:set -u3. -x 或者xtrace: 这个选项告诉shell 在执行命令之前显示实际执行的命令。

这对于调试脚本非常有用,因为它可以帮助我们了解脚本执行过程中发生了什么。

例如,你可以使用以下命令来启用这个选项:set -x以上是一些常用的set 命令选项,但还有其他一些选项可用。

你可以通过查看set 命令的帮助手册来了解更多详细信息:man set此外,set 命令还可以用于设置和修改环境变量。

如果你只想临时设置一个环境变量,可以使用以下语法:set VARNAME=value例如,如果你想将MY_VAR 设置为"hello",你可以运行以下命令:set MY_VAR=hello这个命令将为当前shell 进程设置一个名为MY_VAR 的环境变量,并将其值设置为"hello"。

shell查找某字符串在某文件中出现行数的方法

shell查找某字符串在某文件中出现行数的方法

shell查找某字符串在某⽂件中出现⾏数的⽅法⼀、简介有的时候,我们需要分析⽇志来排查错误,但是⽇志⽂件特别⼤,打开肯定是很慢的,也是没法接受的,我们需要的是快速定位错误出现的位置,并定向取出错误信息。

快速定位某个字符串在某⽂件中出现的⾏数,可以使⽤ linux中grep命令默认情况,grep命令只会输出匹配的字符串所在的⾏,如下:要想同时输出⾏号,可以指定参数-n,关于-n参数描述如下:-n, --line-number print line number with output lines现在,我们已经确定要查询的错误所在⾏数,就可以通过 tail和head或是sed命令输出特定的⾏1、利⽤tail和head来输出特定的⾏通过tail –help ,我们可以看到tail 默认显⽰最后10⾏,通过 -n参数可以指定从第n⾏数开始显⽰,或是显⽰最后n⾏,如下:-n, --lines=K output the last K lines, instead of the last 10; or use -n +K to output lines starting with the Kth也就是说:tail -n 5 f.txt //显⽰f.txt最后5⾏tail -n +5 f.txt //从第5⾏开始,显⽰f.txt通过head –help ,我们可以看到head默认显⽰最前10⾏,通过 -n参数可以指定从倒数第n⾏开始,显⽰前⾯的所有,或是显⽰最前⾯的n⾏-n, --lines=[-]K print the first K lines instead of the first 10; with the leading `-', print all but the last也就是说:head -n 5 f.txt //显⽰f.txt最前⾯5⾏tail -n -5 f.txt //从倒数第5⾏开始,显⽰前⾯的所有内容⽐如,在上⾯我们定位到了8786830⾏,那么,我们就可以利⽤tail和head,查其附近的内容(即错误前20⾏,后10⾏内容),如下:tail -n +8786810 err.log |head -n 302、利⽤sed来输出特定的⾏通过sed来查看指定的⾏,就⽐较简单,格式如下:sed -n "n1,n2p" f.txt //查看f.txt n1⾏到n2⾏之间的内容⽐如,在上⾯我们定位到了8786830⾏,那么,我们就可以利⽤sed,查其附近的内容(即错误前20⾏,后10⾏内容),如下:sed -n "8786810,8786840p" err.log补充:shell 字符串出现的⾏数1 查询字符串所在的⾏号grep -n "xxx" str.txt # -n 打印字符 “xxx” 在⽂件 “str.txt” 所在的⾏数前缀⽰例:str.txtxxxyyyzzzxxx输⼊查找命令: grep -n "xxx" str.txt结果如下:1:xxx4:xxx⾏号1,4在前,匹配字符串“xxx”在后,两者之间⽤冒号 “:” 隔开2 查找字符串⾸次匹配的⾏号grep -n "xxx" str.txt | head -1结果如下:1:xxx同理,查找最后⼀次匹配的⾏号grep -n "xxx" str.txt | tail -1结果如下:4:xxx查找字符串第⼆次匹配的⾏号grep -n "xxx" str.txt | head -2 | tail -1 # 先取出前两⾏,然后取最后⼀⾏结果如下:4:xxx3 提取字符串所在的⾏号grep -n "xxx" str.txt | cut -d ":" -f 1先查询字符串 “xxx” 所在的全部⾏号,然后利⽤ cut 命令分割“:”字符,提取第⼀个字段,即⾏号结果如下:14提取⾸次匹配的⾏号grep -n "xxx" str.txt | head -1 | cut -d ":" -f 1结果如下:14 ⽐较两次字符串⾏号变化幅度两个⽂件内容: str.txt 和 str2.txtstr.txtxxxyyyzzzxxxstr2.txtyyyxxxwwwzzz⽐较⾏号脚本catline.sh#!/bin/bashrm -rf ret.txttotal=`wc -l $1 | awk '{print $1}'`echo "total = $total"num=1while read linedoecho $lineret=`grep -n $line $2 | head -1`echo $retif [ -z $ret ]; thennum2=$totalecho "null num2 = $total"elsenum2=`echo $ret | cut -d ":" -f 1`echo "num2 = $num2"fiecho $numchange=`expr $num2 - $num`echo "$num2 - $num = $change"num=`expr $num + 1`echo "$line=$change" >> ret.txtdone < $1cat ret.txt执⾏脚本命令:./catline.sh str2.txt str.txt 运⾏结果如下:total = 4yyy2:yyynum2 = 212 - 1 = 1xxx1:xxxnum2 = 121 -2 = -1wwwnull num2 = 434 - 3 = 1zzz3:zzznum2 = 343 -4 = -1yyy=1xxx=-1www=1zzz=-1以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使用内置的set和shopt命令设置bash选项
set命令可以用来定制shell环境,使用选项“o”来打开或者关闭选项。

例如打开选项:set -o 选项,关闭选项目:set +o 选项。

例如要打开vi交互式命令行编辑,则如下:
[root@localhost ~]# set -o #查看当前设置情况
allexport off
braceexpand on
emacs on
errexit off
errtrace off
functrace off
hashall on
histexpand on
history on
ignoreeof off
interactive-comments on
keyword off
monitor on
noclobber off
noexec off
noglob off
nolog off
notify off
nounset off
onecmd off
physical off
pipefail off
posix off
verbose off
vi off #关闭中
xtrace off
[root@localhost ~]# set -o vi #把vi选项打开[root@localhost ~]# set -o #查看当前设置情况allexport off
braceexpand on
emacs off
errexit off
errtrace off
functrace off
hashall on
histexpand on
history on
ignoreeof off
interactive-comments on
keyword off
monitor on
noclobber off
noexec off
noglob off
nolog off
notify off
nounset off
onecmd off
physical off
pipefail off
posix off
内置set命令选项
shopt命令是set命令的一种替代,很多方面都和set命令一样,但它增加了很多选项。

可有使用“-p”选项来查看shopt选项的设置。

“-u”开关表示一个复位的选项,“-s”表示选项当前被设置。

shopt -s force_fignore
shopt -u gnu_errfmt
shopt -u histreedit
shopt -u histappend
shopt -u histverify
shopt -s hostcomplete
shopt -u huponexit
shopt -s interactive_comments
shopt -u lithist
shopt -s login_shell
shopt -u mailwarn
shopt -u no_empty_cmd_completion
shopt -u nocaseglob
shopt -u nullglob
shopt -s progcomp
shopt -s promptvars
shopt -u restricted_shell
shopt -u shift_verbose
shopt -s sourcepath
shopt -u xpg_echo
[root@localhost ~]# shopt -s cdspell #把cdspell选项打开[root@localhost ~]# shopt -p cdspell #打印cdspell设置shopt -s cdspell
[root@localhost ~]# cd /raot #故意拼写错误
/root
[root@localhost ~]# pwd #查看当前目录
/root
[root@localhost ~]# cd /usr/loca/bin #故意拼写错误
/usr/local/bin
shopt命令选项。

相关文档
最新文档