Detect if a Shell Script is Already Running

แชร์
ฝัง
  • เผยแพร่เมื่อ 4 ม.ค. 2025

ความคิดเห็น •

  • @Alreza-x6j
    @Alreza-x6j 4 วันที่ผ่านมา +1

    thank you very much Kris, Happy new year. keep going 🤩

    • @DigitalMetal
      @DigitalMetal  4 วันที่ผ่านมา

      Happy new year! Glad you found it helpful.

  • @KM4ACK
    @KM4ACK 3 วันที่ผ่านมา

    Thanks Kris. Happy New Year

    • @DigitalMetal
      @DigitalMetal  3 วันที่ผ่านมา

      Happy New Year to you too!

  • @mrussell8054
    @mrussell8054 3 วันที่ผ่านมา

    Thanks Kris! Happy New Year!

  • @ThanassisTsiodras
    @ThanassisTsiodras 4 วันที่ผ่านมา +2

    Happy New Year, Kris. Isn't your desired behavior the textbook case for flock-ing? i.e. check with flock at the beginning of the script, and abort if it fails?

    • @DigitalMetal
      @DigitalMetal  4 วันที่ผ่านมา +1

      Well look at that. I had not heard of flock before. But there it is, even on my Android shell.
      Why didn't that come up when I was looking up information on this. Thank you. I'll have to play around with this and do an updated video.

  • @veorEL
    @veorEL 4 วันที่ผ่านมา

    Happy New Year!

    • @DigitalMetal
      @DigitalMetal  4 วันที่ผ่านมา

      Happy new year!

  • @gitgosc7075
    @gitgosc7075 วันที่ผ่านมา

    super helpfull, thank you

    • @DigitalMetal
      @DigitalMetal  21 ชั่วโมงที่ผ่านมา

      Glad it was helpful!

  • @leightaylor8069
    @leightaylor8069 3 วันที่ผ่านมา

    When you are using grep -v, I think there may be a problem where the pid you are grepping out is a substring of one of the other pids.

    • @DigitalMetal
      @DigitalMetal  3 วันที่ผ่านมา

      I suppose that could happen, but pids tend to get larger and a larger number won't be part of a smaller number. But, I believe there are times where Linux might start looping back to smaller numbers. I guess the solution to that is to only return results if there is a full line match. something like this:
      pgrep -f zsh|grep -Fxv $$

  • @Anand-fy8oo
    @Anand-fy8oo 4 วันที่ผ่านมา +1

    Nice.

  • @newplayer7743
    @newplayer7743 2 วันที่ผ่านมา

    Instead pipe to dev null, is grep -q not work?

    • @DigitalMetal
      @DigitalMetal  วันที่ผ่านมา

      Yes, I think that would work. I haven't tried it. I just didn't think of that. Thank you.

  • @kaslmineer7999
    @kaslmineer7999 4 วันที่ผ่านมา

    i might use this
    what i will first think of when i'm given this task:
    ```
    if ! [ "`pgrep "$0"|grep -v "$$"`" = "" ]
    then
    printf " ==> ERROR:\"$0\" is being run more than once at the same time

    "
    exit 1
    fi
    ```
    but yours is just a nice oneliner

    • @DigitalMetal
      @DigitalMetal  4 วันที่ผ่านมา

      Yeah, basically the same thing, just shortened up a little.