【Shell】Shell脚本重复执行某一段代码

1. 编写shell脚本

  • 创建并打开sh文件
vi ./send.sh
  • 编写脚本语言
#!/bin/sh
while [ true ]; do
/bin/sleep 1
'此处填写需要重复执行的程序' >> ./send_log.txt //此处为存储log的地址
done

2. 后台运行

nohup ./send.sh &

3. 确认每秒执行

tail -f ./send_log.txt

4. 停止脚本运行进程

ps -ef | grep send.sh | kill -9
  • 或者直接kill程序端口

长安链一些evm合约调用相关

$ cd ../../scripts/
$ ./cluster_quick_start.sh normal     ## scripts下
$ cd ../tools/cmc
$ ./send.sh &

$ tail -f ./send_out.log
$ ps -ef | grep send.sh |kill -9


$ ./cmc client contract user create \
--contract-name=balance001 \
--runtime-type=EVM \
--byte-code-path=./testdata/balance-evm-demo/ledger_balance.bin \
--abi-file-path=./testdata/balance-evm-demo/ledger_balance.abi \
--version=1.0 \
--sdk-conf-path=./testdata/sdk_config.yml \
--admin-key-file-paths=./testdata/crypto-config/wx-org1.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org2.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org3.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org4.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org5.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org6.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org7.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org8.chainmaker.org/user/admin1/admin1.sign.key,./testdata/crypto-config/wx-org9.chainmaker.org/user/admin1/admin1.sign.key \
--admin-crt-file-paths=./testdata/crypto-config/wx-org1.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org2.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org3.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org4.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org5.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org6.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org7.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org8.chainmaker.org/user/admin1/admin1.sign.crt,./testdata/crypto-config/wx-org9.chainmaker.org/user/admin1/admin1.sign.crt \
--sync-result=true


$ ./cmc client contract user invoke \
--contract-name=balance001 \
--method=updateBalance \
--sdk-conf-path=./testdata/sdk_config.yml \
--params="[{\"uint256\": \"10000\"},{\"address\": \"0xa166c92f4c8118905ad984919dc683a7bdb295c1\"}]" \
--sync-result=true \
--abi-file-path=./testdata/balance-evm-demo/ledger_balance.abi

p3JMwWESysNpbVHRGsciJYG7rZ5KGj4ig69s2h3gx3U
0xa166c92f4c8118905ad984919dc683a7bdb295c1

Reference

shell脚本实现每秒执行一次任务

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要书一个连接Oracle并执行一段代码Shell脚本,需要以下步骤: 1. 安装并配置Oracle客户端:首先,需要安装适当版本的Oracle客户端。安装完成后,设置正确的环境变量(例如ORACLE_HOME和LD_LIBRARY_PATH),以确保Shell脚本能够找到Oracle客户端的相关文件。 2. 编Shell脚本:使用文本编辑器创建一个新的Shell脚本文件,例如`connect_oracle.sh`。 3. 在Shell脚本中编连接Oracle的命令:在Shell脚本文件中,可以使用`sqlplus`命令连接到Oracle数据库。使用下面的命令行模板,将其添加到Shell脚本文件中: ```bash sqlplus username/password@hostname:port/service_name <<EOF [Oracle PL/SQL code] EOF ``` 其中,`username`是Oracle数据库的用户名,`password`是对应的密码,`hostname`是Oracle数据库所在的主机名,`port`是连接Oracle数据库的端口号,`service_name`是要连接的Oracle服务名。在`<<EOF`和`EOF`之间,可以编具体的Oracle PL/SQL代码。 4. 编执行的Oracle PL/SQL代码:在连接Oracle的命令之后,可以编要在数据库中执行的具体代码。根据实际需要,可以执行各种数据库操作,如查询、更新、创建表等。 5. 保存并运行Shell脚本:保存Shell脚本文件,并确保该文件具有可执行权限。使用终端进入Shell脚本所在的目录,并运行以下命令执行脚本: ```bash ./connect_oracle.sh ``` 执行过程中,Shell脚本将连接到Oracle数据库,并执行预先编的PL/SQL代码执行结果将在终端显示。 需要注意的是,以上的步骤中需要根据实际情况进行相应的配置和编代码。确保Oracle客户端正常安装和配置,以及Shell脚本中的用户名、密码、主机名、端口号和服务名正确。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值