首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell模板变量替换

我们经常使用一些模板语言来处理一些变量替换。比如jsp,php,velocity,freemarker,thymeleaf等。那对于shell来说,应该怎样替换变量呢。有一种很简单的办法可以做到。...在datax是阿里开源的一个异构数据源同步框架,其配置文档是json的,我想要用shell去调用执行pg到pg的数据同步,需要根据我的配置生成对应的配置文件。...要是使用shell,这样也可以做到: 渲染脚本 #!...第一shell中变量的定义,变量赋值时,等号(=)`两边必须没有空格。 第二, eval的用法。...cat本来是输出文件内容的,这里把输入当做临时文件处理了。 第四, $(xxx) 表示变量替换,和两个反引号的效果相同,会执行里面的命令。所以< pg2pg.datax.json 才会读取文件内容。

2.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

shell脚本的替换功能实现

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。...Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 Shell 脚本(shell script),是一种为 shell 编写的脚本程序。.../test.sh #执行脚本 2、作为解释器参数 这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如: /bin/bash test.sh 目的:将jvm启动时的设置为2048M...#输出替换成功的提示语 } for this in `find $baseDir -type f -name startenv.sh`;   #找到指定目录下的文件名为startenv.sh 的文件,并执行...for 循环 do #开始执行     # 替换jdk配置     echo $this  #输出找到的文件名及全路径     replace $this "2048" "1024" #调用上面定义的方法去执行替换操作

89710

linux替换文件内容,Linux批量替换文件内容

今天测试人员一不小心把导航的地址改错了,大约6000多个导航文件,要通过后台配置的话也很麻烦,可以通过linux命令实现对批量文件进行内容替换,但是技术经理不在,我对linux命令不熟,没办法只好硬着头皮来...经在网上一番辛苦搜索,找到以下几个命令,并尝试执行……最终终于实现效果,哎,“书到用时方恨少”,特此针对今天的情况总结了一下Linux批量替换文件内容的命令, 第一种: 格式:sed -i “s/oldstr.../newstr/g” filesname 说明:oldstr 需要替换的旧字符串 newstr 替换后的新字符串 filesname 批量文件名称,支持正则,如:ST_*.json 案例...: 如果我想把ST_*.json下面的文件里的“today” 替换为“tomorrow”,那就是: sed -i “s/today/tomorrow/g” ST_*.json 但是这种命令有一个缺陷,就是替换文件数量有限制...替换后的新字符串 path 文件路径名称 案例: 如果我想把/app/web/sitemap下面的文件里的“today” 替换为“tommorow”,那就是: grep today -

8.5K30

Shell 中的命令替换及参数扩展

-- 季文康 本文导航 ◈ 前言 00% ◈ 什么是命令替换 14% ◈ 1、一层 SHELL 嵌套 15% ◈ 2、二层 SHELL 嵌套 17% ◈ 3、进阶 30% ◈ 什么是参数扩展 44% ◈...所以今天和大家分享的主要是 “命令替换” 以及 “参数扩展” 。 什么是命令替换 简单的来说就是在 SHELL 内嵌套多条命令,一次性执行得到结果。...1、一层 SHELL 嵌套 2、二层 SHELL 嵌套 使用 读取文件内容,再使用管道符二次处理后。执行! 注意:这里已经用了一层嵌套,以下多个小节会套用以实现二层嵌套。 a....1、变量替换 a. 如果 未设置或为空,则替换成 。 b. 同上。位置参数和特殊参数不能以这种方式分配。 c. 当变量 未设置或为空,shell 也是可交互时,进行报错并且退出。...如果 shell 不可交互,则发生变量替换。 d. 如果 为空或未设置,那么就什么都不做。不然使用 进行替换。 提示: 在我测试的时候,我发现并不是全局生效的。 2、变量切片 a.

1.4K90

Shell 脚本的替换功能实现

Shell 脚本运行 Shell 脚本(shell script),是一种为 Shell 编写的脚本程序。...运行 Shell 脚本有两种方法: 1、作为可执行程序 Step1: 将代码保存为 test.sh 文件 Step2: 并 cd 到test.sh 文件所在目录 Step3: chmod +x ..../test.sh #执行脚本 2、作为解释器参数 这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,执行命令如下: /bin/bash test.sh Shell 脚本替换功能实现...#输出替换成功的提示语 } for this in `find $baseDir -type f -name startenv.sh`; #找到指定目录下的文件名为startenv.sh 的文件...,并执行for 循环 do #开始执行 # 替换jdk配置 echo $this #输出找到的文件名及全路径 replace $this "2048" "1024" #调用上面定义的方法去执行替换操作

62610

Shell 文件相关操作

命令 命令直译 描述 实例 ls List ls会列举出当前工作目录的内容(文件文件夹)。...mv 命令对文件文件夹进行移动,如果文件文件夹存在于当前工作目录,还可以对文件文件夹进行重命名。...tar -cvf 是创建对应压缩文件,tar -tvf 来查看对应压缩文件,tar -xvf 来提取对应压缩文件。...# 将一个文件内所有文件,移动到另一个文件内 mv /file1/* /file2 # 将文件内所有jpg类型的文件,移动到另一个文件内 mv /file1/*.jpg /file2 3. scp 服务器之间...# 查看当前目录有哪些文件 ls # 查看当前目录有哪些文件,并且查看其文件的相关信息,如:创建时间、文件大小 ll # or ls -l # 查看当前目录有哪些文件,并且查看其文件的相关信息,

14510

bash shell参数展开(Shell Parameter Expansion):替换变量(variable)中的字符串

在写bash shell脚本时,如果遇到要替换变量中的字符串,首先想到的就是用sed命令,比如下面的示例将变量str中的数字123替换成UUU: $ str=hello,word,123 $ echo...$str | sed -E -e 's/[0-9]/U/g' hello,word,UUUU 上面的例子中用到echo,sed两个命令来实现字符串替换,略显麻烦 其实bash提供了更简单的语法来实现上面的功能...# 如果只是要替换最后一个出现的数字则这样写 hello,word,U23 $ echo ${str/%[0-9]/U} hello,word,12U 以上雕虫小技都来自于GNU bash shell手册...《Shell-Parameter-Expansion(Shell参数展开)》章节 https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html...#Shell-Parameter-Expansion 上面只是《Shell参数展开》一小部分功能的应用示例, 关于《Shell参数展开》官方文档中提供了远比上面内容更丰的应用方式,建议看看原文档你能找到更多有用的技巧

3.7K20
领券