在linux中配对文件

时间:2012-12-19 21:57:02

标签: python linux perl bash unix

我在目录中有大量文件及其他语言的翻译。有10种不同语言的文件和2或3中的文件。文件的典型名称是xx_xxxx_EN.html,其翻译为xx_xxxx_IT.html。我想提取一个包含文件名称的2列txt文件。例如,英语 - 意大利语对: xx_xxxx_EN.html xx_xxxx_IT.html

1 个答案:

答案 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