Mengapa paralel (GNU?) Gagal diam-diam, dan bagaimana cara memperbaikinya?


15

Dalam skrip yang lebih besar untuk memposting-proses beberapa data simulasi saya memiliki baris berikut:

parallel bnzip2 -- *.bz2

Yang, jika saya mengerti paralleldengan benar (dan saya mungkin tidak), harus menjalankan utas-utas program pada semua file dengan ekstensi yang terdaftar. Anda mungkin memperhatikan bahwa saya salah mengeja perintah bunzip2. Saya mengharapkan pesan peringatan atau kesalahan di sini, tetapi gagal diam-diam. Apakah ini dimaksudkan? Bagaimana saya tidak mendapatkan bit dari ini di masa depan?

Memperbarui:

Mungkin saja saya memiliki parallelinstalasi yang berbeda dari yang saya kira:

> parallel --version`


parallel: invalid option -- '-'
parallel [OPTIONS] command -- arguments
    for each argument, run command with argument, in parallel
parallel [OPTIONS] -- commands
    run specified commands in parallel

Halaman manual parallelpada sistem saya memberikan:

 parallel(1)                                                        parallel(1)
NAME
       parallel - run programs in parallel
....
AUTHOR
   Tollef Fog Heen

Yang sepertinya ini bukan versi GNU.


Mencetak kesalahan pada sistem saya. Apa yang parallel --versiondikatakan? $ parallel bnzip2 -- * sh: bnzip2: command not found
— Mikel

Paralel GNU adalah "Hak Cipta (C) 2010,2011,2012 Ole Tange, ole.tange.dk dan Free Software Foundation, Inc." (Penulis yang sama sejak awal.)
— Mat

Jawaban:


20

Anda telah dilanda kebingungan dengan paralel Tollef dari moreutils. Lihat https://www.gnu.org/software/parallel/history.html

Anda dapat menginstal GNU Parallel hanya dengan:

wget http://git.savannah.gnu.org/cgit/parallel.git/plain/src/parallel
chmod 755 parallel
cp parallel sem

Tonton video intro untuk GNU Parallel untuk mempelajari lebih lanjut: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1


1
Semuanya masuk akal sekarang! Sebagai catatan, pada Ubuntu 12 sekarang apt-get install parallelmenarik paralel Tollef bukan versi GNU Anda. Terima kasih telah mengisikan saya.
— Terhubung


12

(Saya akan membuat ini komentar, tapi saya tidak memiliki hak istimewa.)

Anda juga bisa menggunakan saja parallel --gnu. Anda mengatakan bahwa Ubuntu 12 (.04?) Menggunakan versi Tollef, tetapi sebenarnya implementasi gnu, itu hanya default ke sintaks Tollef secara default karena beberapa alasan.

Saya menambahkan alias parallel='parallel --gnu'ke skrip login saya jadi saya tidak perlu repot-repot lagi.


2
Anda juga dapat menambahkan --gnuke $ HOME / .parallel / config.
— Thor

Catatan: Jawabannya di sini adalah mengalamatkan komentar dari @Hooked.
— Nobar

Lihat di sini untuk pendekatan lain plus sedikit lebih detail mengenai versi: askubuntu.com/a/298598/11522 .
— Nobar

1
Fedora juga menempatkan --tollef di / etc / parallel / config . Seolah itu tidak cukup menjengkelkan, GNU parallel sendiri melaporkan bahwa --tollef akan dihapus pada 20140222 .
— musicinmybrain
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.