当前位置: 首页 > 面试题库 >

将多个目录中的文件重命名为目录名

公冶浩慨
2023-03-14
问题内容

我有这样的事情:

v_1/file.txt
v_2/file.txt
v_3/file.txt
...

我想将这些文件重命名为以下形式:

v_1.txt
v_2.txt
v_3.txt
...

在同一目录中。

我想我可以使用,rename但是我不知道如何在文件夹和文件重命名的同时使用它。


问题答案:

可以使用bash for loop和mv

for subdir in *; do mv $subdir/file.txt $subdir.txt; done;

请注意,如果目录名称包含空格,则上述解决方案将不起作用。相关链接。

另一种基于注释的解决方案(也适用于名称中也包含空格的目录):

find . -type d -not -empty -exec echo mv \{\}/file.txt \{\}.txt \;


 类似资料:
  • 问题内容: 我正在尝试使用Python重命名目录中的某些文件。 假设我有一个名为的文件,并且想要删除,所以我得到的文件名将是 我正在尝试使用,但无法正常工作。我也考虑过使用字符串操作,但也没有成功。 问题答案: 使用重命名或移动文件或目录。

  • 问题内容: 我正在尝试使用以下Python脚本重命名目录中的多个文件: 运行此脚本时,出现以下错误: 这是为什么?我该如何解决这个问题? 谢谢。 问题答案: 重命名时您没有给出完整的路径,请按照以下步骤操作: 编辑 :感谢tavo,第一个解决方案将文件移动到当前目录,修复该问题。

  • 问题内容: 有没有一种简单的方法可以使用Python重命名目录中已包含的一组文件? 示例: 我有一个充满* .doc文件的目录,我想以一致的方式重命名它们。 X.doc->“ new(X).doc” Y.doc->“ new(Y).doc” 问题答案: 这样的重命名非常容易,例如使用os和glob模块: 然后可以在示例中使用它,如下所示: 上面的示例会将dir中的所有文件都转换为,其中是文件的先前

  • 前面小节介绍了文件和目录的创建、移动、删除、打包、压缩,本小节介绍如何对已有的文件或者重命名,好的文件命名规范将提升对文件和目录管理的效率。 1. 使用 mv 命令对文件名称 这里还是以 /home 目录的 alltxt.tar 文件为例,可以使用 mv 命令对其重命名: ls mv alltxt.tar newtxt.tar ls 执行结果如下图: 如上图所示相当于文件移动路径没变,名称变

  • 问题内容: 我想重命名与名称相匹配的basedir下的所有目录。例如: 在中,我有: 我想重命名所有匹配的目录,但是我想保留前缀部分。 使用,我可以轻松地列出所有目录,如下所示: 但是,如何使用(或与其他应用程序结合)以保留前缀? 提前谢谢了! 问题答案: 在执行命令之前将目录更改为父目录,因此此处对于每个父目录都是本地的。

  • 在过去的几个小时里,我一直在努力解决这个问题,如果不再次下载和上传文件,我真的找不到一个方法来解决这个问题。有可能吗? 这个问题类似于这个问题:我如何使用FTP在目录之间移动文件?但我有一种感觉,它没有解决,尽管它得到了回答。 重命名文件本身非常简单,没有任何问题,但是我如何将其移动到另一个目录? 我有以下示例代码: 我得到了与另一个主题相同的错误: