GNU/Linux >> Belajar Linux >  >> Linux

Cara mengatur waktu sekelompok perintah di Bash

Anda juga dapat menggunakan metode EOF Dokumen Di Sini untuk membuat skrip multi-baris dengan cepat. Keuntungan utamanya, adalah Anda dapat menggunakan tanda kutip ganda tanpa keluar itu:

timeout 1s bash <<EOF
    sleep 2s
    echo "something without escaping double quotes"  
EOF

Catatan:

  1. Penutupan EOF tidak boleh mengikuti spasi/tab, tetapi berada di awal baris terakhir.
  2. Pastikan Anda telah mengekspor fungsi lokal dengan export -f my_func atau set -o allexport untuk semua fungsi (sebelum mendeklarasikannya). Ini relevan untuk jawaban sebelumnya juga, karena memanggil bash/sh menjalankan proses di sesi baru, tidak mengetahui fungsi lingkungan lokal.

timeout bukan utilitas shell dan tidak melakukan pemrosesan gaya shell. Itu harus diberikan satu perintah tunggal untuk dieksekusi. Namun, perintah itu dapat memiliki sejumlah argumen. Untungnya, salah satu perintah yang bisa Anda berikan adalah bash :

timeout 1 bash -c '{ sleep 2; echo something; }'

Tentu saja, dalam bentuk ini, kawat gigi sekarang tidak berguna:

timeout 1 bash -c 'sleep 2; echo something'

Di sini, bash adalah perintah timeout mengeksekusi. -c dan sleep 2; echo something adalah argumen untuk perintah itu.


Linux
  1. Cara menggunakan perintah riwayat Bash

  2. Bagaimana menjalankan perintah bash Linux dalam skrip PERL?

  3. Bagaimana Cara Menentukan Pelengkapan Otomatis Khusus Untuk Perintah Tertentu?

  1. Bagaimana Cara Men-debug Skrip Bash?

  2. Bagaimana Cara Mengubah Cron Shell (sh ke Bash)?

  3. Bagaimana Cara Mendeteksi Bash>=4.0?

  1. Cara mengubah jumlah perintah yang disimpan di Bash History

  2. Bagaimana saya bisa menggunakan perintah alias dengan xargs?

  3. Bash:tunggu dengan batas waktu