GNU/Linux >> Belajar Linux >  >> Linux

nohup beberapa perintah berurutan

Solusi termudah:Buat skrip shell dengan

 #/bin/sh
 tar -zcf archive.tar.gz.tmp mydir
 mv archive.tar.gz.tmp archive.tar.gz

Dan gunakan nohup myscript . Mungkin dengan beberapa dokumentasi tambahan dalam skrip.

(Ya, saya payah dalam dokumentasi. Terutama saat bekerja dengan banyak orang atau saat Anda suatu saat mungkin akan meninggalkan pekerjaan dan penerus Anda perlu mencari tahu alasannya".)

Alternatifnya mungkin memulai shell baru untuk subtugas (dalam hal ini tar dan pindahkan Anda)

nohup `$(tar -zcf archive.tar.gz.tmp mydir; mv archive.tar.gz.tmp archive.tar.gz)

Alternatif 2:

nohup ```tar -zcf archive.tar.gz.tmp mydir; mv arsip.tar.gz.tmp arsip.tar.gz```.

Saya lebih suka skripnya. Komentar di dalamnya mungkin cukup berguna saat Anda atau orang lain melihat skripnya dalam beberapa tahun dan bertanya-tanya mengapa dilakukan seperti ini.

Pada catatan yang tidak terkait:Bagaimana cara memposting anser dengan backtick di dalamnya? (Perintah untuk shell untuk 'menggunakan perintah ini; mengumpankan output ke perintah lain sebagai input`).


Saya pikir Anda perlu tanda kurung.

nohup $(tar -zcf archive.tar.gz.tmp mydir; mv archive.tar.gz.tmp archive.tar.gz) >/dev/null 2>&1 &


Mungkin bungkus pesta?

nohup bash -c 'tar -zcf archive.tar.gz.tmp mydir > /dev/null 2>&1 ; mv archive.tar.gz.tmp archive.tar.gz > /dev/null 2>&1' &

Linux
  1. Gabungkan banyak file tar dalam satu perintah

  2. rsync ke/dari arsip tar

  3. Format arsip yang diindeks?

  1. 16 Perintah Tar untuk Kompres dan Ekstrak File di Linux

  2. Kompres folder dengan tar?

  3. Menambahkan file ke file tbz

  1. Cara Membagi Arsip 'tar' Besar menjadi Beberapa File dengan Ukuran Tertentu

  2. Bagaimana Cara Mengirim Stdout Ke Beberapa Perintah?

  3. Beberapa Perintah Di Sshpass?