批处理文件替换复制文件的文件名中的字符串

时间:2016-11-14 08:43:16

标签: batch-file command

我有大约10个批处理文件,它们将* .txt文件从根文件夹复制到它们的子文件夹。复制代码如下:

cscript ..\myScripts\CopyFiles.vbs "." "..\myScripts\Copy.cfg" "scripts_A" "((.+\.txt)|(.+\.ps1))"

每个批处理文件都将* .txt文件复制到具有相同名称的文件夹(A.bat - > scripts_A,B.bat - > scripts_B)。我需要在每个子文件夹中都有正确的文件名(在文件夹scripts_A文件中需要是operationAfirst.txt,operationAsecond.txt,在文件夹scripts_B文件operationBfirst.txt,operationBsecond.txt中)。所以结果应该是:

for folder scripts_A:
operationAfirst.txt
operationAsecond.txt
for folder scripts_B:
operationBfirst.txt
operationBsecond.txt

子文件夹中的所有* .txt文件通常都是文件夹scripts_A的* .txt文件的克隆。我只需要更新他们的文件名。是否有任何可能性如何编辑批处理文件,它可以替换文件夹scripts_B中用于“B”的文件名中的“A”字符串?

1 个答案:

答案 0 :(得分:0)

我没有修复设计不佳的设置的结果,而是更愿意提供如何改变这种情况的提示。因此,根据一个人的知识,这批次将进行重命名:

df1 <- data.frame(
  BP = 1:6,
  A1 = c("A", "A", "T", "T", "C", "C"),
  A2= c("G", "T", "C", "C", "G", "T"),
  zscore = runif(6, min = -1, max = 1),
  stringsAsFactors = FALSE
)

df2 <- data.frame(
  CHR = 1:6,
  AA = c("G", "T", "T", "C", "G", "C"),
  DA = c("A", "A", "C", "T", "C", "T"),
  SDS = runif(6),
  stringsAsFactors = FALSE
)

df3 <- data.frame(SDS = rep(NA, nrow(df1)))

for (i in 1:nrow(df1)) {
  if (df1$zscore[i] >= 0) {
    if (df1$A1[i] == df2$DA[i]) {
      df3$SDS[i] <- df2$SDS[i]
    } else if (df1$A1[i] == df2$AA[i]) {
      df3$SDS[i] <- -df2$SDS[i]
    }
  } else if (df1$zscore[i] < 0) {
    if (df1$A2[i] == df2$DA[i]) {
      df3$SDS[i] <- df2$SDS[i]
    } else if (df1$A2[i] == df2$AA[i]) {
      df3$SDS[i] <- -df2$SDS[i]
    }
  }
}

df3

更改cd语句中的路径。 第一个堆叠for循环迭代字母A到J. 第二个在列出all的文件夹script_(letter)中执行dir 以操作开头的文件和扩展名.txt。找到了 然后删除此文件夹的所有正确名称。 其余的是被调用子程序的参数

子例程从前缀操作构建新名称 其次是文件夹字母和原始名称,从第11位 (抵消10)。

只要回声在ren前面保留,它就会显示它会做什么。