Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

197
Views
Cómo ejecutar dos funciones una por una en la lista de funciones en el archivo script.sh

Quiero dos funciones llamadas una por una en un solo comando bash.

  1. Lo intenté llamando en bash
  2. ./script run delete_code run stop_node_pool - Pero ejecuta la primera función y se detiene. la segunda función no se inició.
  3. ./script delete_code: si le damos un nombre de función, su trabajo para una función en particular. Pero necesito llamar a dos funciones que elijo mientras ejecuto el script en bash.
  4. Cómo escribir un programa para ejecutar dos funciones cualquiera una por una en una lista de funciones disponibles en el archivo script.sh.

Mi código de muestra

 #!/bin/bash delete_code() { echo "code deleted" $1 && shift && "@a" } create_code() { echo "code created" $1 && shift && "@a" } stop_node_pool() { echo "node pool stopped" $1 && shift && "@a" } start_node_pool() { echo "node pool start" $1 && shift && "@a" } EXECUTION case $1 in delete_code) "$@"; exit;; create_code) "$@"; exit;; stop_node_pool) "$@"; exit;; start_node_pool) "$@"; exit;; esac delete_code create_code stop_node_pool start_node_pool
over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

No estoy seguro de entender su problema (su pregunta es confusa), pero tal vez esto lo resuelva:

 #!/bin/bash usage() { echo "Usage: $0 <code_deleted|code_created|node_pool_stopped|node_pool_start>" 1>&2; exit 1; } # unless there are 2 arguments, print the "usage" and exit [ ! $# -eq 2 ] && usage # Functions delete_code() { echo "code deleted test" } create_code() { echo "code created test" } stop_node_pool() { echo "node pool stopped test" } start_node_pool() { echo "node pool start test" } # Execution for i in "$@" do case "$i" in code_deleted) delete_code & ;; code_created) create_code & ;; node_pool_stopped) stop_node_pool & ;; node_pool_start) start_node_pool & ;; *) usage ;; esac done wait
over 4 years ago · Santiago Trujillo Report

0

#!/bin/bash usage() { echo "Usage: $0 <code_deleted|code_created|node_pool_stopped|node_pool_start>" 1>&2; exit 1; } # unless there are 2 arguments, print the "usage" and exit [ ! $# -eq 2 ] && usage # Functions delete_code() { echo "code deleted test" } create_code() { echo "code created test" } stop_node_pool() { echo "node pool stopped test" } start_node_pool() { echo "node pool start test" } # Execution for i in "$@" do case "$i" in code_deleted) delete_code & ;; code_created) create_code & ;; node_pool_stopped) stop_node_pool & ;; node_pool_start) start_node_pool & ;; *) usage ;; esac wait done
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!