必须登录才能发言。

  • 227
    @Ta 2023-10-20
    /

    @0XNIAI,您可以编写一个Shell脚本来监测/root/apps/ptbd/dev/backend/lib目录下的ptbd-backend.jar文件的大小(字节数),并在大小发生改变时执行/usr/local/sh/restart-gxs-ptbd.sh脚本。以下是一个示例脚本:

    #!/bin/bash
    
    # 设置要监测的JAR文件路径
    jar_file="/root/apps/ptbd/dev/backend/lib/ptbd-backend.jar"
    
    # 记录上次检查的文件大小
    previous_file_size=$(stat -c %s "$jar_file")
    
    # 循环监测
    while true; do
        # 获取当前文件大小
        current_file_size=$(stat -c %s "$jar_file")
    
        # 检查文件大小是否发生改变
        if [ "$current_file_size" -ne "$previous_file_size" ]; then
            echo "Jar文件大小发生改变,执行重启脚本..."
            /usr/local/sh/restart-gxs-ptbd.sh  # 执行重启脚本
    
            # 更新上次检查的文件大小
            previous_file_size="$current_file_size"
        fi
    
        # 每隔一段时间再次检查
        sleep 60  # 60秒,您可以根据需要调整检查频率
    done
    

    这个脚本会不断检查ptbd-backend.jar文件的大小,如果文件大小发生改变,就会执行重启脚本。请将此脚本保存为一个文件,添加可执行权限,并运行它。

    类似于前一个脚本,此脚本的检查频率是每60秒一次,您可以根据需要调整这个值。确保您已经创建了/usr/local/sh/restart-gxs-ptbd.sh脚本,并该脚本包含了重启ptbd-backend.jar的逻辑。

  • 226
    @Ta 2023-10-20
    /
    @ChatGPT,写一个shell脚本,监测/root/apps/ptbd/dev/backend/lib下的ptbd-backend.jar文件,如果文件大小字节数发生改变,则执行/usr/local/sh/restart-gxs-ptbd.sh脚本
  • 225
    @Ta 2023-10-20
    /

    @0XNIAI,您可以创建一个Shell脚本来监测/root/apps/ptbd/dev/backend/lib目录下的ptbd-backend.jar文件的修改日期,并在日期发生改变时执行/usr/local/sh/restart-gxs-ptbd.sh脚本。以下是一个示例脚本:

    #!/bin/bash
    
    # 设置要监测的JAR文件路径
    jar_file="/root/apps/ptbd/dev/backend/lib/ptbd-backend.jar"
    
    # 记录上次检查的修改日期
    previous_modification_time=$(stat -c %Y "$jar_file")
    
    # 循环监测
    while true; do
        # 获取当前修改日期
        current_modification_time=$(stat -c %Y "$jar_file")
    
        # 检查日期是否发生改变
        if [ "$current_modification_time" -ne "$previous_modification_time" ]; then
            echo "Jar文件已经发生改变,执行重启脚本..."
            /usr/local/sh/restart-gxs-ptbd.sh  # 执行重启脚本
    
            # 更新上次检查的修改日期
            previous_modification_time="$current_modification_time"
        fi
    
        # 每隔一段时间再次检查
        sleep 60  # 60秒,您可以根据需要调整检查频率
    done
    

    这个脚本会反复检查ptbd-backend.jar文件的修改日期,如果日期发生改变,就会执行重启脚本。您可以将此脚本保存为一个文件,然后使用chmod +x来添加可执行权限,之后运行它。

    请注意,脚本中的检查频率是每60秒一次,您可以根据需要调整这个值。此外,确保您已经创建了/usr/local/sh/restart-gxs-ptbd.sh脚本,并该脚本包含了重启ptbd-backend.jar的逻辑。

  • 224
    @Ta 2023-10-20
    /
    @ChatGPT,写一个shell脚本,监测/root/apps/ptbd/dev/backend/lib下的ptbd-backend.jar文件,如果日期发生改变,则执行/usr/local/sh/restart-gxs-ptbd.sh脚本
  • 223
    @Ta 2023-10-20
    /

    @咯叽,对接的网页版(你在这里发消息,机器人就去网页发消息),不是按量计费。如果我不订阅GPT-4的话是免费的。不过最近我订阅了GPT-4,所以是每月20美元。

  • 222
    @Ta 2023-10-20
    /
    @老虎会游泳,你弄在这里这么多人用它要钱吗?
  • 221
    @Ta 2023-10-20
    /

    之前网卡住了,现在好了

  • 220
    @Ta 2023-10-20
    /
    层主 @老虎会游泳 删除了该楼层。
  • 219
    @Ta 2023-10-20
    /

    @老虎会游泳,如果您需要更多关于VBScript或批处理脚本的帮助,请随时提出您的问题或需求,我将尽力提供协助。如果您有其他问题或需要进一步的指导,请随时告诉我。

  • 218
    @Ta 2023-10-20
    /

    @ChatGPT,在?

  • 217
    @Ta 2023-10-20
    /

    [Default (GPT-3.5)] [新会话] @0XNIAI,Could not parse your authentication token. Please try signing in again.

  • 216
    @Ta 2023-10-20
    /
    @ChatGPT,写一个脚本,监测如果/root/apps/ptbd/dev/backend/lib/target下文件日期发生改变,则执行/usr/local/sh/restart-gxs-ptbd.sh脚本
  • 215
    @Ta 2023-10-20
    /

    [Default (GPT-3.5)] [新会话] @0XNIAI,Could not parse your authentication token. Please try signing in again.

  • 214
    @Ta 2023-10-20
    /
    @ChatGPT,#!/bin/bash

    ./stop-gxs-ptbd.sh

    sleep 1

    # 启动应用
    /root/apps/ptbd/dev/backend/bin/start-gxs-ptbd.sh


    sleep 5

    ./msg-gxs-ptbd.sh
                                                        这个脚本正确吗
  • 213
    @Ta 2023-10-20
    /

    @0XNIAI,您可以创建一个名为 restart.sh 的Shell脚本,以按照您描述的步骤执行停止和启动操作,最后监视日志文件。以下是一个示例脚本:

    #!/bin/bash
    
    # 停止应用
    /root/apps/ptbd/dev/backend/bin/stop.sh
    
    # 等待3秒
    sleep 3
    
    # 启动应用
    /root/apps/ptbd/dev/backend/bin/start.sh
    
    # 监视日志文件
    tail -f /root/apps/ptbd/dev/backend/log/stdout.log
    

    确保在执行脚本前,您已经将脚本文件(restart.sh)设置为可执行权限,可以使用以下命令完成:

    chmod +x restart.sh
    

    然后,您可以运行 ./restart.sh 来执行脚本。这将按照您所描述的顺序执行停止、等待、启动和监视日志文件的操作。

  • 212
    @Ta 2023-10-20
    /
    @ChatGPT,写一个restart.sh脚本,先执行/root/apps/ptbd/dev/backend/bin/stop.sh脚本,等待3秒后,再次执行/root/apps/ptbd/dev/backend/bin/start.sh脚本,同时最后执行tail -f /root/apps/ptbd/dev/backend/log/stdout.log
  • 211
    @Ta 2023-10-20
    /

    @流光,对不起,之前的回答有误,感谢您的指正。确实,我犯了几个错误。以下是正确的方式来将IPFS Base58地址转换为CIDv1 Base32地址:

    import base58
    import base32_crockford
    
    # 输入IPFS URL的Base58地址
    ipfs_base58_address = "your_base58_address_here"
    
    # 解码Base58地址
    decoded_base58 = base58.b58decode(ipfs_base58_address)
    
    # 使用Multihash部分创建CID
    cidv1_multihash = bytes([0x12]) + decoded_base58  # 添加CID版本前缀(0x12)并保留原始Multihash部分
    
    # 将CID Multihash编码为Base32
    base32_address = base32_crockford.encode(cidv1_multihash)
    
    print("IPFS CIDv1 Base32地址:", base32_address)
    

    这段代码首先解码IPFS Base58地址,然后将其包装在CIDv1的Multihash中,并最后将该Multihash编码为Base32地址。还需要注意,CIDv1在Multihash前面添加了一个版本前缀(0x12)。

    再次感谢您的纠正和耐心。

  • 210
    @Ta 2023-10-20
    /
    @ChatGPT,错了,第一,不需要移除前面两个字节,第二,v0转v1的代码没有,第三,base32前缀没有说明.
  • 209
    @Ta 2023-10-20
    /

    [Default (GPT-3.5)] [新会话] @流光,将IPFS URL的Base58地址转换为Base32地址需要进行一些编码和解码操作,因为Base58和Base32是不同的编码方案。IPFS地址通常使用Base58编码,而Base32通常用于CIDv1(Content Identifier Version 1)。以下是将IPFS URL的Base58地址转换为Base32地址的一般步骤:

    1. 解析IPFS URL以获取Base58地址。
    2. 对Base58地址进行Base58解码,将其转换为二进制数据。
    3. 根据CIDv1规范对二进制数据进行相应的编码和处理以生成Base32地址。

    这里是一个Python示例,演示如何执行此操作,假设你已经有了IPFS URL:

    import base58
    import multihash
    import cid
    
    # 输入IPFS URL的Base58地址
    ipfs_base58_address = "your_base58_address_here"
    
    # 解码Base58地址
    decoded_base58 = base58.b58decode(ipfs_base58_address)
    
    # 获取Multihash(哈希部分)
    multihash = decoded_base58[2:]  # 通常IPFS Base58地址的Multihash从第三个字节开始
    
    # 创建CID对象
    cid_obj = cid.make_v1(cid.DagProtobuf, multihash)
    
    # 将CID编码为Base32地址
    base32_address = cid_obj.encode()
    
    print("IPFS Base32地址:", base32_address)
    

    请确保安装所需的Python库,如base58multihashcid,以便运行此示例。

    要注意的是,IPFS地址的确切转换方法可能取决于使用的库和工具,因此可能需要根据特定的实现进行一些适应。此示例提供了一种通用方法,但具体情况可能会有所不同。

  • 208
    @Ta 2023-10-20
    /
    @ChatGPT,ipfs URL的base58地址怎么转base32地址?