bashの配列内の反復されない要素を見つける方法を探しています。Bash:配列内の反復されていない要素を見つける
簡単な例:
joined_arrays=(CVE-2015-4840 CVE-2015-4840 CVE-2015-4860 CVE-2015-4860 CVE-2016-3598)
<magic>
non_repeated=(CVE-2016-3598)
コンテキストを与えるために、ここでの目標が原因であることに、ホスト上の「yumの更新」を介して、一般的に利用できないすべてのパッケージ更新のCVEの配列で終わることです除外される。私はそのようなことをやって思いついた方法は、3つの予備配列移入することです:
- available_updatesを=()何yumのアップデートは「
- all_updates =()#including除外したものを提供する#just
- joined_updates =()#両方の以前の配列の内容 次に、joined_updates =()にロジックを適用し、正確に1回だけ含まれる要素だけを返します。 2回の出現を持つ要素は、通常どおり更新でき、 'excluded_updates =()'配列に終わる必要はありません。
これはうまくいけばいいと思います。私はそれを入力していたので、残ったものを除外された更新として残して、available_updates =()で見つかったすべての要素をall_updates =()から削除するほうが簡単かどうか疑問に思っています。
ありがとうございます!カウンタは正確に一つある
あなたの目標は、などのセットの違い、交差点を、行うことができるのであれば、あなたは考えるかもしれません'comm'ユーティリティを使用します。 [BashFAQ#36](http://mywiki.wooledge.org/BashFAQ/036)を参照してください。 –
@CharlesDuffy:実際に私はあなたの答えを見ませんでした。うーん。しかし、あなたは正しい、質問は別のものです:) – sjsam