Shell Script 001:多列、多行文本处理

202 阅读1分钟

Shell Script 001

多列、多行文本处理

cat > ok.txt << EOF
FXvk5iY7tf  7Ggj0kBKqHTsTomx.jpg    kNKyLGWVMN62yPXl0kQm.jpg
5jruWuCdh3  sy4uwzH6iaOcgfXz.jpg    xX3TpGOwgg4Ss7nv2kJu.jpg
SjDFur6fjL  vc2VTUw42kxzgs9f.jpg    JfWm5cmU0DY5774xGZ9k.jpg
2BU6CDce4m  NsteqfmUEBGHaKh7.jpg    C7t1fHX4jEtifEG3ofz3.jpg
kzrGyKSnet  N0nsKh9QrkJf9mX1.jpg    3RbRp3NMuaKb7s24QtE6.jpg
gXbzABiRHX  gfI2JVF6ML8cKnig.jpg    QYdCZiw2cEpa3QLoV6rl.jpg
6yZ06a5SZZ  yphH24UIdxHRfG1g.jpg    sBCVJXUpkn68z08MKz5b.jpg
PXvgLvR0sf  ghClHzC7zM4CwmRO.jpg    If5EQbkWouCXHuvO5h4b.jpg
WZ5a0JNQF9  lmAL1nRzM2374lVc.jpg    jZglye3l7aSKxG3H0qvz.jpg
stSpO1PHUR  JcCZj92nZQtguAto.jpg    GBd6g7oa0oeZF5uQ0pLG.jpg
EOF

要求:将第二列和第三列图片,拷贝至第一列创建的目录中

while read -r line; do
    column1=$(echo "$line" | awk '{print $1}')
    column2=$(echo "$line" | awk '{print $2}')
    column3=$(echo "$line" | awk '{print $3}')
    mkdir -p "$column1"
    cp "$column2" "$column1"
    cp "$column3" "$column1"
done < ok.txt
  • 文件查找是否存在

    $ locate JcCZj92nZQtguAto.jpg

  • 文件查找递归查找是否存在

    $ locate -r '/home/user/.*GBd6g7oa0oeZF5uQ0pLG.jpg'