V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iblessyou
V2EX  ›  Terminal

求教个常见的 shell 问题

  •  
  •   iblessyou · 24 天前 · 570 次点击

    如下 shell , elasticsearch -d 放到 main 方法里直接执行就可以,在 start 里会卡在那,程序也不自动退出,如果还是想用类似结构,怎么避免呢。

    function start (){
      elasticsearch -d 
    }
    
    function main(){
      start
    }
    main
    
    第 1 条附言  ·  24 天前
    我的锅,刚发现放 main 里也不行,必须不用方法包着才正常。
    5 条回复    2024-05-30 15:20:24 +08:00
    ssgooglg
        1
    ssgooglg  
       24 天前
    elasticsearch -d 后面加上空格 + & ,作用是把命令放到后台运行
    ssgooglg
        2
    ssgooglg  
       24 天前
    或者也可以试试 nohup 最好指定一下输入 log 目录 不然默认都打印在当前目录的 nohup.out 了
    rrfeng
        3
    rrfeng  
       24 天前
    直接 -d 程序会退出吗?
    iblessyou
        4
    iblessyou  
    OP
       24 天前
    @rrfeng 直接执行或者放 shell 里直接执行都正常


    @ssgooglg ai 回答也是加&,试了下不行。
    rrfeng
        5
    rrfeng  
       24 天前
    这个代码没问题,肯定其他地方有
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   907 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 19:33 · PVG 03:33 · LAX 12:33 · JFK 15:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.