【问题标题】:How to change file name in shell?如何在shell中更改文件名?
【发布时间】:2017-11-07 03:04:36
【问题描述】:

我想使用 shell 脚本更改文件名。

原始文件名为aa.docs_YYYYMMDDhhmmssbb.pdf_YYYYMMDDhhmmsscc.xxx_YYYYMMDDhhmmss 等。 YYYYMMDDhhmmss 目前是唯一的。

目标文件名在 Oracle DB 表中,将为 xxx.docs_YYYYMMDDhhmmss

那些有相同的YYYYMMDDhhmmss

如何使用 shell 脚本从 DB 中更改文件名?

【问题讨论】:

标签: oracle shell unix


【解决方案1】:

尝试这样的事情。您应该根据源文件为YYYYMMDDhhmmss 使用适当的值。

for file_name in *_YYYYMMDDhhmmss
do
   file_type=`echo $file_name | cut -f2 -d '.' | cut -f1 -d '_'`
   file_date=`echo $file_name | cut -f2 -d '.' | cut -f2 -d '_'`

 db_filename=`sqlplus -s user/pwd <<INP
 set heading off
 set pagesize 0
 select file_name from yourtable where file_name like '%${file_type}%${file_date}';
 INP`

    mv ${file_name} ${db_filename}
done

【讨论】:

    猜你喜欢
    • 2021-01-13
    • 2017-03-31
    • 1970-01-01
    • 2013-05-27
    • 2011-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-02
    相关资源
    最近更新 更多