私はbashスクリプトの経験があまりありません。ただし、ディレクトリ内の対応するxsdファイルを使用して個々のxmlファイルを検証しようとしています。開始名は同じままですが、日付が変更されます。
たとえば、
- ファイル1.xsd
- ファイル2.xsd
- ファイル3.xsd
- File1_random_date.xml
- ファイル2_random_date.xml
- ファイル2_random_date.xml
- ファイル3_random_date.xml
File2.xsdに対してすべてのFile2 * .xmlファイルを検証し、File1.xsdなどに対してすべてのFile1 * .xmlを検証したいと思います。
それは次のとおりです。
xmllint --noout --schema File2.xsd File2_*.xml
xmllint --noout --schema File1.xsd File1_*.xml
しかし、正規表現文字列を使用して日付を表示し、File2_*.xmlが存在することを確認し、File2.xsdの各ファイルを検証する方法がわかりません。
助けが必要ですか?
ベストアンサー1
そしてzsh
:
list=(file*_*.xml)
for prefix (${(u)list%%_*})
xmllint --noout --schema $prefix.xsd ${prefix}_*.xml