在shell中,"abc"定义"gh"要解析成一个字符串。
在shell中,双引号(" ")用于定义一个字符串,而单引号(' ')用于定义一个字符。当使用双引号定义字符串时,其中的变量会被解析并替换为其对应的值。而单引号定义的字符串则会被视为纯文本,不进行任何解析。
因此,在shell中,"abc"定义"gh"会被解析成一个字符串,即"abcgh"。
在类加载的解析阶段,会将class常量池载入内存中(JDK1.7之前位于方法区,现在位于Heap中),并且将符号引用解析成直接引用,即根据对方法/类的描述信息指向内存中对应的方法/类。...第一部分:str1在常量池创建了abc,并将引用放入字符串池,str2拷贝常量池中的abc并在堆中创建新字符串。intern()从字符串池中获取的是常量池中str1的abc引用。...第二部分:str3通过char[]在堆中创建了字符串,不是在常量池,所以gh的引用不会自动放入字符串池。str4在常量池创建了gh,所以字符串池中保存了str4的gh引用。...第三部分:str3通过char[]在堆中创建了字符串,不是在常量池,所以gh的引用不会自动放入字符串池,但是它调用intern()手动将str3的gh的引用添加到了字符串池中。...当str4使用字面量赋值创建时,查询到字符串池中有gh的引用,str4就指向了str3的gh引用。intern()从字符串池中获取的是堆中str3的gh引用。
笔记内容: l awk 中使用外部shell变量 l awk 合并一个文件 l 把一个文件多行连接成一行 l awk中gsub函数的使用 l awk 截取指定多个域为一行 l 过滤两个或多个关键词 l...有多少个变量需要赋值,就需要多少个-v选项。与之等价的:应用于脚本中: ?...中定义的,也可以定义先打1.txt的2列,后打2.txt的2列,改为{print a[1],0}即可。...awk -F ':' 'gsub(/root/,"abc", 这个命令是把passwd文件中第一段的root字符串替换为abc: ?...awk 'sub(/root/,"abc") {print $0}' passwd 这个命令是把passwd文件中第一次出现的root字符串替换为abc: ?
#:只用一个#,就是注释 echo:输出 我们把上面的脚本保存成一个文件, 1.sh 后面的这个sh是shell脚本的扩展名。然后要怎嚒来执行呢?...我们可以发现,这个字符串的单双号和PHP的处理非常类似,单引号不解析变量,双引号可以解析变量。但是都可以处理转义符号。...0 a="" if [ -z $a ]; then echo "a为空" fi 4.7、()、(())、[]、[[]]和{} 在shell中,有几个符号要非常注意,用的也比较多,不要搞混了,搞混了...也可以用户定义函数,然后在shell脚本中可以随便调用。...注意:所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。调用函数仅使用其函数名即可。
正则表达式 正则表达式是一种模板表达式语言 通过定义规则去匹配、查找、替换、分割一个长字符串中特定的子字符信息。...如在一篇文章中查找出所有合法的电子邮箱地址,则可以先用正则表达式定义一个电子邮箱规则,然后再使用这个规则在整个字符串中查找。 爬虫程序一般都会借助正则表达式定义的规则在爬出来的内容中做精细化筛检。...正则表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。 如需在 “This is my love” 中匹配 “love” 子字符串,则表达式就是 "love"。...默认情况下,正则表达式的语法解析器不会把 其视为其自身含义,而是把它解析成特定的含义(边界定义)。所以表达式中需使用转义符 \ 进行转义。...text 字符串中查找匹配的内容,如果找到则返回第1个匹配的 Match 对象,否则返回None re.findall() 方法:在 text 字符串中查找所有匹配的内容。
公众号:爱写bug(ID:icodebugs) 给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。...示例 1: 输入: "Let's take LeetCode contest" 输出: "s'teL ekat edoCteeL tsetnoc" 注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格...'abc def' 原字符串 ['a' , 'b' , 'c' , ' ' , 'd' , 'e' ,'f'] 转成char[]型数组 ['c' , 'b' , 'a' , '...,这里再次投机取巧,利用 python 切片特性及 split() 、join() 函数解题,解题思路: 'abc def gh' 原字符串 'hg fed cba' 切片特性反转字符串...['hg' , 'fed' , 'cba'] split()分割字符串 ['cba' , 'fed' , 'hg'] 切片反转数组 'cba fed hg' 拼接成字符串
爱写bug(ID:icodebugs) 给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。...示例 1: 输入: "Let's take LeetCode contest" 输出: "s'teL ekat edoCteeL tsetnoc" 注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格...'abc def' 原字符串 ['a' , 'b' , 'c' , ' ' , 'd' , 'e' ,'f'] 转成char...,这里再次投机取巧,利用 python 切片特性及 split() 、join() 函数解题,解题思路: 'abc def gh' 原字符串 'hg fed cba'...拼接成字符串 Python3: class Solution: def reverseWords(self, s: str) -> str: return
concat('abc','def','gh') from lxw_dual; abcdefgh 4....表示各个字符串间的分隔符 举例: hive> select concat_ws(',','abc','def','gh') from lxw_dual; abc,def,gh 5....正则表达式替换函数:regexp_replace 语法: regexp_replace(string A, string B, string C) 返回值: string 说明:将字符串A中的符合java...注意,在有些情况下要使用转义字符,类似oracle中的regexp_replace函数。...json_string, string path) 返回值: string 说明:解析json的字符串json_string,返回path指定的内容。
VxWorks 6.9里支持的vi命令有: 移动与搜索命令 代表1-9的数字,不使用则表示1 G 跳转到history的第条命令 / 在history中,向后搜索包含字符串... 在history中,向前搜索包含字符串的命令 n 重复上一次搜索 N 反方向重复上一次搜索 k 在history中,向后搜索第条命令 - 在history中,向后搜索第条命令 j 在history中,向前搜索第条命令 + 在history中,向前搜索第条命令 h 将光标向左移动个字符 CTRL-H 将光标向左移动1个字符 ...l 将光标向右移动个字符 SPACE 将光标向右移动个字符 b 将光标向左移动个单词,标点也算单词,例如"abc_def%^gh ijk@lm"为8个单词 B 将光标向左移动...个由空格间隔的单词,例如"abc_def%^gh ijk@lm"为2个单词 w 将光标向右移动个单词 W 将光标向右移动个由空格间隔的单词 e 将光标移动到右侧第<n
自定义变量 就是自己定义的变量 分类: 自定义局部变量 自定义常量 自定义全局变量 自定义局部变量 就是定义在一个脚本文件中的变量,只能在这个脚本文件中使用的变量。...自定义全局变量语法 export var_name var_name2 案例需求 测试全局变量在子Shell中是否可用,在父Shell中是否可用。...'abc'${var1} abc666 [root@localhost ~]# 使用双引号 "" 的字符串: 其中包含了变量,那么该变量会解析得到值,而不是原样输出。...注意: Bash Shell 只支持一维数组,不支持多维数组。 数组的定义 语法 在Shell中,用括号 () 来表示数组,数组元素之间用空格来分割。...环境中所有的别名 unalias -a 以上2种方式删除都是临时删除当前Shell的别名,如果要永久删除必须去配置文件中手动删除。
假如你需要匹配文本中的字符"\",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。...Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\\"表示。同样,匹配一个数字的"\\d"可以写成r"\d"。...因为match是从左至右匹配,由于Long在字符串的中间,写任何正则都无法匹配出Long。 需要用到另外一个方法search,表示从整个文本中去搜索。...") print(res) 执行输出: ['abc', 'de', 'f', 'GH'] re.sub 匹配字符并替换 res = re.sub("[0-9]+","|","abc12de3f45GH...") print(res) 执行输出: abc|de|f|GH 只替换一个 res = re.sub("[0-9]+","|","abc12de3f45GH",count=1) print(res) 执行输出
Shell变量 在Shell中包括有三种变量类型:系统环境变量、自定义变量和特殊符号变量。...自定义变量分为三种类型: 自定义局部变量:就是定义在一个脚本文件中的变量, 只能在这个脚本文件中使用的变量, 就是局部变量 自定义常量:就是变量设置值以后不可以修改的变量叫常量, 也叫只读变量 自定义全局变量...(注意:如果这一步不执行,无法读取更新的环境变量) 1 source /etc/profile 在交互式Shell中输出环境变量 1 echo $VAR1 Shell字符串变量 字符串是 Shell...123 var2='abc${var1}'echo $var2#输出:abc${var1} 双引号(推荐):其中包含了变量,那么该变量会被解析得到值,而不是原样输出。...但字符串中不能出现空格,否则空格后边的字符串会作为其他变量或者命令解析。
我们知道在 shell 中使用单引号与双引号定义的字符串是有区别的。...单引号定义字符串所见即所得,双引号引用的内容,所见非所得。...使用 mysql 登录时密码加单引号或手动输入密码此时 $2 没有被解析成空,与数据库中的密码不一致无法登录,而密码加双引号或不加时 $2 被解析成空,刚好和数据库的密码一致此时能正常登录数据库。...所以在新建用户或登录数据库时如果密码包含特殊字符需要注意是否会被解析的问题。...总结1.新建用户及登录用户时如果密码存在特殊字符需要注意特殊字符会被解析成其它字符,需加上单引号或加上转义字符\。
』,而是一种Linux的命令接口,在 Linux 的世界中,默认使用的是 GNU 开发出来的 shell ,称为 BASH Shell,简单来说,我们之前使用的几个命令都是 bash 管理的,除此之外,...在Linux系统中,常用的shell可以在/etc/shells文件中查到....匹配任意一个字符*匹配0个或多个任意字符,也就是可以匹配任何内容[]匹配括号内的任意一个字符 例如:[abc],在abc中任选一个[-]匹配一定范围的字符 例如:[a-z],在a-z之间的都可以被匹配[...``反引号:反引号内会被当成命令解析,先执行$()$加括号:同反引号作用相同,执行解析命令()小括号:用于命令执行,小括号中的命令会在子shell中执行{}中括号:用于命令执行,中括号中的命令会在当前shell...◆col 文本过滤器◆col命令是一个标准输入文本过滤器,它从标注输入设备读取文本内容,并把内容显示到标注输出设备.在许多UNIX说明文件里,都有RLF控制字符.当我们运用shell特殊字符>和>> 把说明文件的内容输出成纯文本文件时
Hive Shell参数 1.Hive命令行 (1)....命令:hive -f filename 含义:执行文件中的HQL脚本 这里的filename为test001.sql文件,文件内容如下 hive -f test001.sql执行结果如下 (4..."Facebook"全部转换成大写"FACEBOOK"返回 (4).常用内置函数 # 字符串拼接函数:concat 用法:select concat('abc', 'def', 'gh'); 实现效果:...:cast 用法:select cast(1.8 as int); 实现效果:1 # json解析函数,用来处理json串:get_json_object 用法:select get_json_object...('{"name":"tom", "age":"10"}', '$.name'); 实现效果:tom # URL解析函数:parse_url 用法:select parse_url('http://
等差数列划分 1.1 分析 一、题目解析: 至少有三个元素才能构成等差数列,题目要求返回的是子序列等差数列的个数 二、算法原理: 状态表示 以i位置为结尾,找所有子数组中有多少个等差数列 dp[...在例2中都是升的,所以最大湍流数组长度就是2。 在例1中只有一个元素,所以最大湍流数组长度就是1。...看一下给的例2:s里面给的字符串就可以在wordDict 字典里面找到就返回true。...状态转移方程 根据最后一个位置的情况来划分问题:前面那一部分单词,加上最后一个单词,而最后一个单词中的i,只要能确定前面部分能拼接而成,并且最后一个单词在wordDict 字典里面能找到,那么这个字符串就能拼接而成...那么在设一个变量j来作为左边部分的最后一个下标,左边这个字符串的开始在0,结尾在j-1,这个区间能否作为字典中的单词拼接而成就是dp[j-1],右边这个位置就[j,i]组成的单词是否在字典中就行。
awk复习 awk 中使用外部shell变量 awk 中使用外部shell变量 A=44echo "ABCD" | awk -v GET_A=$A ’{print GET_A}’ 说明:-v选项用于定义参数...有多少个变量需要赋值,就需要多少个-v选项。与之等价的:应用于脚本中: #!...文件——>sh 加 文件,即可看到结果 awk 合并一个文件 把一个文件多行连接成一行 awk中gsub函数的使用 awk 'gsub(/root/,"1111")' test.txt //把文件中所有的...' filename // 找出文件(filename)中包含123或者包含abc的行 egrep '123|abc' filename //用egrep同样可以实现 awk '/123|abc...filename1 filename2 //将两个文件中相同的行合并到一行 -d 在两个文件连接处用一个 指定的字符 连接 paste 2.txt 3.txt //将2和3文件中相同的行合并到一行
变量类型 shell 中存在三类变量: 局部变量:在脚本或命令中定义的变量,仅在当前 shell 实例中有效,其他 shell 启动的程序不能访问局部变量; 环境变量:所有程序(包括 shell 启动的程序...}' echo ${last_name1} # test1 test echo ${last_name2} # test1 ${first_name} 在定义 shell 字符串变量时如果使用单引号包裹变量内容...以上句式中: welcome1 属于单引号字符串无法解析变量, welcome2 属于字符串拼接, welcome3 属于双引号解析字符串变量, welcome4 属于字符串拼接。...# 函数在定义时无需在 function_name() 的 () 中写入具体参数,而是通过 ${1} ${2} 的形式对参数进行调用 name param1 param2 param3 流程控制相关...它还有很多基础语法是我没有整理到位的,也有很多进阶应用是这篇文章不应涉及但却十分重要的,毕竟 shell 非常接近 Unix 系统内核,因此如果你想要系统的学习 shell 还请根据自身情况参考我在 前言
#字符串大小写转换 s3 = "ABC" s4 = "abc" s3_lower = s3.lower() s4_upper = s4.upper() #翻转字符串 s_reverse = s[::-...3.jieba中文处理 import jieba #全模式:把句子中所有的可以成词的词语都扫描出来,速度非常快,但不能解决歧义; seg_list= jieba.cut("我爱学习自然语言处理",cut_all...=None)和del_word(word)在程序中动态修改字典,这时HMM要设置为False 用suggest_freq(segment,tune=True)可调节单个词语的词频,使其能(或不能)被分出来...会发现"中将"被拆为"中"和"将"了。...jieba.analyse.extract_tags(sentense,topK=20,withWeight=False,allowPOS=()) sentense:待提取的文本 topK:返回权重较大的前多少个关键词
领取专属 10元无门槛券
手把手带您无忧上云