Câu trả lời:
Đối với Ubuntu v17.04 ("Zesty Zapus") và Debian v9 ("Kéo dài") , ( 2017 hoặc mới hơn) hoặc phân phối dựa trên các phiên bản đó, vui lòng đọc câu trả lời của Bryan Larsen trước .
Đối với các phiên bản từ trước năm 2017 , hãy đọc trên ...
Sử dụng dpkg
để buộc cài đặt; song song được cùng độc đáo với moreutils - nó đổi tên moreutils ' parallel
util để parallel.moreutils
. Khi cài đặt xong, cả hai chương trình ( GNU và moreutils ) đều khả dụng.
NB: nếu có sử dụng kịch bản gọi cũ moreutils parallel
, thay đổi những kịch bản để sử dụng tên dài hơn.
Chi tiết: Tìm nạp gói song song (không cài đặt hoặc gỡ bỏ bất cứ thứ gì). Sau đó, sử dụng compgen
, (một bash
lệnh nội bộ), tìm gói song song trong kho lưu trữ. Nếu có nhiều hơn một, sử dụng mới nhất. Buộc gói đó để cài đặt, mặc dù có xung đột.
apt-get --assume-yes --download-only install parallel &&
ls --sort=version $(compgen -f /var/cache/apt/archives/parallel) |
tail -n 1 | xargs dpkg --force-conflicts -i
Làm thế nào để xem các chuyển hướng kết quả:
dpkg-divert --list 'par*'
Đầu ra:
diversion of /usr/share/man/man1/parallel.1.gz to /usr/share/man/man1/parallel.moreutils.1.gz by parallel
diversion of /usr/bin/parallel to /usr/bin/parallel.moreutils by parallel
Xem cách cả hai thực thi nhị phân có sẵn:
compgen -c parallel | xargs which | xargs ls -l
Đầu ra:
-rwxr-xr-x 1 root root 240814 Oct 31 2014 /usr/bin/parallel
-rwxr-xr-x 1 root root 10592 Jul 21 2015 /usr/bin/parallel.moreutils
apt-get install
tiếp tục phàn nàn về xung đột, như bạn đã viết trước đó.
/var/lib/dpkg/status
để loại bỏ xung đột. Tìm kiếm "Xung đột: moreutils", đã xóa dòng này. Nguồn: superuser.com/a/815371/99136 . Có vẻ như bây giờ hoạt động, nhưng tôi sợ một bản cập nhật của gói "song song" sẽ phá vỡ mọi thứ một lần nữa.
apt-get install
cảnh báo rằng parallel
gói sẽ không được nâng cấp, nhưng apt-cache policy
không hiển thị các phiên bản khác nhau và thậm chí apt-get dist-upgrade
sẽ không chạm vào parallel
gói. Vì vậy, nâng cấp parallel
dường như là một quá trình phải được bắt đầu một cách có ý thức. Tốt với tôi.
Nếu bạn cài đặt song song & moreutils bạn sẽ có được GNU parallel
như /usr/bin/parallel
và moreutil 's parallel
như /usr/bin/parallel.moreutils
. Nếu bạn chỉ cài đặt thêmututils , nó cung cấp /usr/bin/parallel
.
Nếu bạn đang sử dụng phiên bản Ubuntu hoặc Debian cũ hơn , bạn có thể tải xuống và cài đặt .deb từ phiên bản mới hơn: chúng cài đặt và hoạt động tốt.
Tôi đoán, cách dễ nhất sẽ là cài đặt một trong các gói thông thường (ví dụ parallel
) và chỉ trích xuất một gói khác vào đường dẫn tùy chỉnh:
$ sudo apt-get install libio-pty-perl libipc-run-perl
$ sudo apt-get download moreutils
$ dpkg -x moreutils_0.54-1_amd64.deb /tmp/moreutils
$ cd /tmp/moreutils/usr/bin/
GNU song song chỉ là một tập lệnh perl, vì vậy bạn có thể sao chép nó ở đâu đó hữu ích (ví dụ / usr / local / bin / gnu -allel).
(Chỉ cần kiểm tra các phụ thuộc perl).