linux - 从linux中的两个文件内容重命名文件名

标签 linux renaming

我具有 Linux 的基础知识,需要您的帮助来开发满足以下要求的概念。我有两个文件 FILE_NAMES.txt 和 FILE_NAMES_TS.txt。文件内容如下。

FILE_NAMES.txt
====
jan_
feb_
mar_

FILE_NAMES_TS.txt
====
jan_20170921.csv
feb_20170921.csv
mar_20170921.csv

以上内容都是文件名,放在db_views/data目录下。因为 FILE_NAMES_TS.txt 的内容最初是 0 字节。现在必须将 jan_ 移动/重命名为 jan_20170921.csv,等等。这意味着文件 jan_20170921.txt 现在是非零字节。请帮忙。

最佳答案

您可以使用 readarray bash 函数将文件读入 2 个数组,然后使用 mv 命令重命名每个文件

#!/bin/bash

readarray a < names.txt
readarray b < names_ts.txt

len=${#a[@]}

echo $len

for (( i=0; i<${len}; i++ ));
do
    echo mv ${a[$i]} ${b[$i]}
done

关于linux - 从linux中的两个文件内容重命名文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46345499/

相关文章:

在 Linux 问题上使用 ssh 的 Java Runtime.exec()

linux - 如何使用 update-alternatives 将 clang 设置为默认编译器

linux - 关于Linux进程内存布局的问题

windows - 重命名设备(硬编码设备名称)

visual-studio - 重命名类文件不再提示重命名所有匹配项

powershell - 如何使用PowerShell根据每个文件中的特定内容重命名文件夹中的文件?

php - 你怎么知道 syslog-ng 是否停止了你的监听守护进程?

python - libcurl 在curl 和curl-config 中不匹配

php - 用 PHP for mySQL 重命名非法列名