Fang programoutput og afslut med shell script: Trin-for-trin guide

Hvordan kan output fra et program fanges og programmet derefter afsluttes, når en bestemt linje eller et bestemt antal linjer er outputtet af programmet, ved hjælp af et shell script?

For at fange output fra et program og afslutte det, når en bestemt linje eller et bestemt antal linjer er outputtet, kan du bruge et shell script med en while-løkke, en tæller eller kill-kommandoen.

Hvordan kan output fra et program fanges og programmet derefter afsluttes, når en bestemt linje eller et bestemt antal linjer er outputtet af programmet, ved hjælp af et shell script?

For at fange output fra et program og afslutte det, når en bestemt linje eller et bestemt antal linjer er outputtet, kan du bruge et shell script. Her er en trin-for-trin guide:

  1. Brug af en while-løkke: Du kan bruge en while-løkke til at læse output linje for linje.

    #!/bin/bash
    program_output=$(your_program | while IFS= read -r line; do
      echo "$line"
      # Check for specific line or line count
      if [[ "$line" == "specific line" ]]; then
        break
      fi
    done)
  2. Brug af en tæller: Hvis du vil afslutte programmet efter et bestemt antal linjer, kan du bruge en tæller.

    #!/bin/bash
    line_count=0
    your_program | while IFS= read -r line; do
      echo "$line"
      ((line_count++))
      if [[ $line_count -ge 10 ]]; then
        break
      fi
    done
  3. Afslutning af programmet: For at afslutte programmet, kan du bruge kill kommandoen.

    #!/bin/bash
    your_program_pid=$!
    line_count=0
    your_program | while IFS= read -r line; do
      echo "$line"
      ((line_count++))
      if [[ $line_count -ge 10 ]]; then
        kill $your_program_pid
        break
      fi
    done

Disse metoder giver dig mulighed for at fange output fra et program og afslutte det baseret på specifikke kriterier ved hjælp af et shell script.