【问题标题】:Rename the files by ignoring every thing after first space in file name通过忽略文件名中第一个空格后的所有内容来重命名文件
【发布时间】:2020-08-05 07:31:09
【问题描述】:

我需要重命名目录中的所有文件,如下所示:

原始文件名:ABC_DEFGHIJK_LMNO Thu Jul 30 07:29:14 CEST 2020

重命名文件名:ABC_DEFGHIJK_LMNO

所以基本上我需要在重命名文件时忽略第一个空格之后的所有内容。

【问题讨论】:

    标签: linux unix linux-development


    【解决方案1】:

    您可以像这样编写一个简单的 bash 脚本:

    #!/bin/bash
    
    cd /path/to/files
    for f in *
    do
      new_name=$(echo "$f" | cut -d ' ' -f1)
      echo renaming file "$f" to "$new_name"
      # mv "$f" "$new_name"
    done
    

    如果输出正常,请取消注释 mv 命令以重命名文件。

    【讨论】:

    • 谢谢!!!以下命令在 Oracle Linux 上工作:for f in *;做 mv "$f" $(echo $f | cut -d ' ' -f1);完成
    • 天哪,是的,总是用双引号引用包含文件名的变量。差点忘记了。
    猜你喜欢
    • 2016-07-13
    • 1970-01-01
    • 2018-02-28
    • 2013-05-10
    • 1970-01-01
    • 2012-11-02
    • 2016-08-06
    • 2022-01-14
    • 2020-03-14
    相关资源
    最近更新 更多