現在、特定のパターンの行ブロックを削除するスクリプトを作成しています。file1.txt残りon file2.txt。以下は例です FILE1.TXT:私はfssecPermissionId
の70以上の値があること、私が だろうしていることfssecPermissionId=FSNASVIEW
、fssecPermissionId=FSNASMANAGE
とfssecPermissionId=CMPlanManagementmonitor
パターン内のbashを使用してファイル内の行ブロックを削除し、残りのファイルを別のファイルに保存する方法
注意してブロックを削除したい
dn: fssecPermissionId=FSNASVIEW,fsFragmentId=Permissions,fsFragmentId=Securi ty,fsClusterId=ClusterRoot fssecPermissionId: FSNASVIEW objectClass: FSSecPermission fssecAssignedGroupRoleRef: group_1 dn: fssecPermissionId=FSNASMANAGE,fsFragmentId=Permissions,fsFragmentId=Securi ty,fsClusterId=ClusterRoot fssecPermissionId: FSNASMANAGE objectClass: FSSecPermission fssecAssignedGroupRoleRef: group_2 dn: fssecPermissionId=permission1,fsFragmentId=Permissions,fsFragmentId=Securi ty,fsClusterId=ClusterRoot fssecPermissionId: permission1 objectClass: FSSecPermission fssecAssignedGroupRoleRef: group_3 dn: fssecPermissionId=CMPlanManagementmonitor,fsFragmentId=Permissions,fsFragmentId=Securi ty,fsClusterId=ClusterRoot fssecPermissionId: CMPlanManagementmonitor objectClass: FSSecPermission fssecAssignedGroupRoleRef: group_4 dn: fssecPermissionId=permission2,fsFragmentId=Permissions,fsFragmentId=Securi ty,fsClusterId=ClusterRoot fssecPermissionId: permission2 objectClass: FSSecPermission fssecAssignedGroupRoleRef: group_5
削除したいのですが、簡単にするための例はほとんどありませんでした。私は 考えているそれらの70の値は何とか配列に格納されるだろう しかし、私はどのように考えている。以下は
FILE2.TXT
dn: fssecPermissionId=permission1,fsFragmentId=Permissions,fsFragmentId=Securi
ty,fsClusterId=ClusterRoot
fssecPermissionId: permission1
objectClass: FSSecPermission
fssecAssignedGroupRoleRef: group_3
dn: fssecPermissionId=permission2,fsFragmentId=Permissions,fsFragmentId=Securi
ty,fsClusterId=ClusterRoot
fssecPermissionId: permission2
objectClass: FSSecPermission
fssecAssignedGroupRoleRef: group_5
に保存されます予想される出力は、任意の助けを事前にどうもありがとうございます。
これは 'fssecPermissionId'が3つの値しか持たない場合には動作しますが、私の実際のファイルでは削除する' fssecPermissionId'の値が70以上あります。このコードを使って70の値を制限する方法はありますか? –
私はこれを試してみましょう。ありがとうございました! –
回答がさらに編集されました。 – anubhava