Database 将两个级别的每个文件夹向下移动一个级别
我试图撤销一个可怕的设计决策,我被迫在数据库中实现,希望有一个批处理文件可以解决这个问题 当前,记录的文件按名称字段存储,然后按记录编号存储。我的上一个老板坚持要通过windows而不是记录界面来处理记录。我需要解决这个问题,因为我需要能够创建没有名称字段的记录 这是目前的结构Database 将两个级别的每个文件夹向下移动一个级别,database,batch-file,Database,Batch File,我试图撤销一个可怕的设计决策,我被迫在数据库中实现,希望有一个批处理文件可以解决这个问题 当前,记录的文件按名称字段存储,然后按记录编号存储。我的上一个老板坚持要通过windows而不是记录界面来处理记录。我需要解决这个问题,因为我需要能够创建没有名称字段的记录 这是目前的结构 Recordfiles John Smith 230 approvedpacket.pdf initialpacket.pdf 232 Approved packet.pdf
Recordfiles
John Smith
230
approvedpacket.pdf
initialpacket.pdf
232
Approved packet.pdf
Initialpacket.pdf
Jane Frank
343
Deniedpacket.pdf
我需要的是让它看起来像
Recordfiles
230
232
343
因此,我需要将每个文件夹及其内容从/recordfiles/向下移动两级,向上移动一级。我在不同的网站上尝试了很多批处理文件的解决方案,但到目前为止没有成功。每一个都只是弹出命令窗口一小会儿,其他什么都没有
需要注意的是:我在这方面是个新手,我只知道一些入门级的VisualBasic,没有接受过正式培训。任何帮助都将不胜感激
编辑:好吧,那么。。。我找到了一个办法。我转到/recordfiles/,进行*搜索,等待它加载这些文件夹中的每个文件,选择所有编号的文件夹,然后将它们复制/粘贴到我想要的位置。所以在这方面没有急事,但我很好奇如何用批处理文件为未来的项目做到这一点
> tree /F
A:.
│ _.cmd
│
└───Recordfiles
├───Jane Frank
│ └───343
│ Deniedpacket.pdf
│
└───John Smith
├───230
│ approvedpacket.pdf
│ initialpacket.pdf
│
└───232
Approved packet.pdf
Initialpacket.pdf
这一行可以移动
> for /f "delims=" %A in ('dir /B/S/AD "???" ^|findstr "\\[0-9][0-9][0-9]$" ') do @Move "%A" "%A\..\.."
在批处理文件中,将百分比符号加倍
@Echo off
CD /D "X:\path\Recordfiles"
for /f "delims=" %%A in (
'dir /B/S/AD "???" ^|findstr "\\[0-9][0-9][0-9]$" '
) do Move "%%A" "%%A\..\.."
那么这个呢(未经测试):
pushd“D:\path\to\RecordFiles”| |退出/B 1
对于/F“delims=eol=|”%%A in('dir/B/A:D“*”)do(
对于(“%%~A\*”)中的/D%%B,请执行以下操作(
移动/Y“%%~B”“%%~dpA%%~nxB”
)
rmdir“%%~A”
)
邻苯二胺
您尝试过什么?请分享你的努力!是否需要删除一级文件夹?发生冲突时应如何处理,例如。g、 ,当两个目录John Smith
和Jane Frank
都包含子目录230
时?
> tree /F
Auflistung der Ordnerpfade für Volume RamDisk
Volumeseriennummer : 5566-7788
A:.
│ _.cmd
│
└───Recordfiles
├───230
│ approvedpacket.pdf
│ initialpacket.pdf
│
├───232
│ Approved packet.pdf
│ Initialpacket.pdf
│
├───343
│ Deniedpacket.pdf
│
├───Jane Frank
└───John Smith