标签: file-rename

使用python批量重命名100K文件

我有一个包含超过100,000个文件的文件夹,所有文件都使用相同的存根编号,但没有前导零,并且数字并不总是连续的(通常它们是,但是有间隙)例如:

file-21.png, 
file-22.png,  
file-640.png, 
file-641.png, 
file-642.png, 
file-645.png, 
file-2130.png, 
file-2131.png, 
file-3012.png, 
Run Code Online (Sandbox Code Playgroud)

等等

我想批量处理它来创建填充的,连续的文件.例如:

file-000000.png, 
file-000001.png, 
file-000002.png, 
file-000003.png, 
Run Code Online (Sandbox Code Playgroud)

当我用for filename in os.listdir('.'):文件解析文件夹时,我不想按顺序出现.可以理解他们出现了

 file-1, 
 file-1x, 
 file-1xx, 
 file-1xxx,
Run Code Online (Sandbox Code Playgroud)

等等

 file-2, 
 file-2x, 
 file-2xx, 
Run Code Online (Sandbox Code Playgroud)

我怎么能按数值的顺序让它通过?我是一个完整的python noob,但是看着文档,我猜我可以使用map创建一个新的列表,只过滤掉数字部分,然后对该列表进行排序,然后迭代它?有超过100K的文件,这可能很重.欢迎任何提示!

python file-rename batch-rename

9
推荐指数
2
解决办法
5356
查看次数

使用wget覆盖文件但使用临时文件名直到收到完整文件,然后重命名

我在cron作业中使用wget每分钟将一个.jpg文件提取到一个Web服务器文件夹中(每次使用相同的文件名,覆盖).该文件夹是"实时"的,因为Web服务器也从那里提供该图像.但是,如果在获取图像的过程中有人浏览该页面,则会将其视为带有错误的jpg,并在浏览器中这样说.所以我需要做的是,类似于Firefox下载文件时,wget应该写入临时文件,在/ var或目标文件夹中但是使用临时名称,直到它具有整个内容,然后重命名为原子(或至少可忽略的持续时间)步骤.

我已经阅读了wget手册页,但似乎没有一个命令行选项.我错过了吗?或者我需要在我的cron作业中执行两个命令,一个wget和一个移动?

wget file-rename

9
推荐指数
1
解决办法
1085
查看次数

Bash命令从所有文件名中删除前导零

我有一个目录,其中包含一堆名称如下的文件:

001234.jpg
001235.jpg
004729342.jpg
Run Code Online (Sandbox Code Playgroud)

我想从所有文件名中删除前导零,所以我将留下:

1234.jpg
1235.jpg
4729342.jpg
Run Code Online (Sandbox Code Playgroud)

我一直在尝试不同的sed配置,但我找不到合适的语法.有没有一种简单的方法可以列出目录中的所有文件,通过sed管道,然后将它们移动或复制到新文件名而不带前导零?

bash sed file-rename

8
推荐指数
3
解决办法
1万
查看次数

使用Bash重命名文件,删除前缀和后缀

我想用bash重命名一堆文件,转换这个文件模式:

prefix - name - suffix.txt
Run Code Online (Sandbox Code Playgroud)

进入这一个:

name.txt
Run Code Online (Sandbox Code Playgroud)

为此我写了以下脚本:

find . -name "*.txt" | while read f
do
  mv "${f}" "${f/prefix - /}"
done

find . -name "*.txt" | while read f
do
  mv "${f}" "${f/ - suffix/}"
done
Run Code Online (Sandbox Code Playgroud)

它有效,但我想使用单个循环执行重命名.可能吗?

bash shell file-rename

8
推荐指数
1
解决办法
1万
查看次数

重命名900kb的pdf文件需要很长时间

我正在尝试rename()使用PHP的900 KiB PDF文件.由于某种原因,重命名它需要很长时间.我认为应该是即时的.

这是在CentOS服务器上.在重命名文件时,我可以获取属性,似乎rename()是复制并用新重命名的文件替换旧文件.

旧名称和新名称路径位于同一目录中.

以前有人偶然发现了这个问题吗?


码:

    //If exists change name and then return path
    $pieces = explode("@", $filename);
    $newName = $pieces[0].' '.$pieces[2];

    rename($uidPath.$filename, $uidPath.$newName);

    if (preg_match('/pdf/', $pieces[2]))
    {
        $result['status'] = '1';
        $result['path'] = 'path to file';
    } 
    else 
    {
        $result['status'] = '1';
        $result['path'] = 'path to file';
    }
Run Code Online (Sandbox Code Playgroud)

php performance file-rename

8
推荐指数
1
解决办法
870
查看次数

我无法在VS中重命名文件名

我有一个名为 的文件,Default2.aspx我正在尝试重命名为Default.aspx,但是当我尝试这样做时,视觉工作室只是将其重命名回Default2.aspxname. 甚至不要给出任何错误消息。我不知道如何解决这个问题。还有其他文件被调用了Default.aspx。我已经尝试过重新启动 VS 甚至电脑。没有运气。

我认为这是因为 VS 仍然相信还有更老的Default.aspx文件..即使是这样,我仍然不知道到底在哪里查看这个文件。另外,VS不能给出错误信息吗?这不是 VS 的 bug 吗?

我正在使用 VS 08 和 ASP.NET 应用程序编辑 C# 代码

c# asp.net file-rename visual-studio-2008

8
推荐指数
1
解决办法
1万
查看次数

通过文件上传控件上传文件时,在c#.net中重命名文件,并将文件的chang名称保存在数据库中

我有文件上传器,通过它我浏览文件并在字符串变量中输出浏览文件的名称.现在我想用另一个存储在另一个字符串变量中的名称重命名这个uplaod文件名

string strRoleValue = ddlrole.SelectedValue;

 string strfilename = FileUpload1.FileName;
 string existpath = Server.MapPath("~\\JD\\");
 DirectoryInfo ObjSearchFile = new DirectoryInfo(existpath);
  string saveLocation = existpath + strfilename;
FileUpload1.SaveAs(saveLocation);
Run Code Online (Sandbox Code Playgroud)

strRoleValue此变量包含我想用来重命名通过fileupload上传的文件的名称.通过存储在的fileupload控件上传的文件名strfilename.所以在将此文件保存到指定文件夹之前,我想用strRoleValue值重命名它.我怎样才能实现这个... plz的帮助

database asp.net file-upload system file-rename

8
推荐指数
1
解决办法
3万
查看次数

用python重命名和移动文件

我有python脚本,将文件夹中的现有文件名与参考表进行比较,然后确定是否需要重命名.

因为它遍历每个文件名:

'oldname' = the current file name

'newname' = what it needs to be renamed to
Run Code Online (Sandbox Code Playgroud)

我想重命名该文件并将其移动到一个新文件夹"..\renamedfiles"

我可以在迭代循环的同时进行重命名和移动吗?

更新:道歉,我对scrpting一般都很绿,但这看起来非常基本.shutil.move正是我需要的感谢 - 我只是不知道要找它.下面的成功测试.现在将其用于脚本.

import shutil
os.chdir('C:\Users\me\Desktop\New folder')
renFolder= 'Renamed'
oldname = 'Test.txt'
newname= 'renTest.txt'
shutil.move(oldname, renFolder+'/'+newname)
Run Code Online (Sandbox Code Playgroud)

python file-rename

8
推荐指数
2
解决办法
3万
查看次数

为多个重命名的两个文件创建Git补丁

我想将两个文件从一个存储库移动到另一个存储库.这些文件最初添加为:

  1. /src/init/Price.cs
  2. /tests/init/PriceTests.cs

这两个文件后来被重命名为:

  1. /src/init/PriceValue.cs
  2. /tests/init/PriceValueTests.cs

然后转到:

  1. /src/moved/PriceValue.cs
  2. /tests/moved/PriceValueTests.cs

我试图通过这种描述为这些文件创建一组补丁,但我不确定如何传递文件存在的六种不同路径.

我设法找到影响PriceValue.cs(跨重命名和移动)的所有提交ID ,但将这些ID传递给Git失败,并显示以下错误消息:

$ git format-patch -o /tmp/pricevaluepatches $(git log --all dfeeb 6966b 9f882 …)
-bash: /usr/local/bin/git: Argument list too long
Run Code Online (Sandbox Code Playgroud)

那么,我如何为此创建一组补丁,它只包含对所提到文件的更改,但是在一个重命名和每个文件的一次移动中包含它?

git patch file-rename git-patch file-move

8
推荐指数
2
解决办法
444
查看次数

使用 MSBuild 移动和重命名具有双扩展名的文件

在 VS MSBuild 中,我们将一组文件从一个文件夹移动到另一个文件夹:

<ItemGroup>
      <RenameFile Include="Main\App.*" />     
</ItemGroup>    
<Move SourceFiles="@(RenameFile)" DestinationFiles="%(RootDir)%(RenameFile.Directory)NewApp%(RenameFile.Extension)" />
Run Code Online (Sandbox Code Playgroud)

它工作正常,但一个文件:App.exe.config,因为它具有双扩展名,并将其更名为NewApp.config代替NewApp.exe.config(应该如何)。

如何解决?

msbuild file file-rename visual-studio-2017 movefile

8
推荐指数
1
解决办法
4709
查看次数