我在目录中有大量文件及其他语言的翻译。有10种不同语言的文件和2或3中的文件。文件的典型名称是xx_xxxx_EN.html
,其翻译为xx_xxxx_IT.html。我想提取一个包含文件名称的2列txt文件。例如,英语 - 意大利语对:
xx_xxxx_EN.html xx_xxxx_IT.html
答案 0 :(得分:5)
#!/bin/bash
ls -1 *EN.html | while IFS= read -r file
do
ls -1 ${file%_*}* | while IFS= read -r match
do
if [ "$file" != "$match" ]; then
echo "$file" "$match"
fi
done
done
$ ls *html
01_DE.html 01_EN.html 01_ESP.html 01_IT.html 02_EN.html 02_IT.html 02_PL.html
$ ./pair.sh
01_EN.html 01_DE.html
01_EN.html 01_ESP.html
01_EN.html 01_IT.html
02_EN.html 02_IT.html
02_EN.html 02_PL.html