Board logo

标题: [文件操作] 【已解决】批处理如何使用本文件夹的名字作为文件的名字? [打印本页]

作者: 332971606    时间: 2015-8-5 14:26     标题: 【已解决】批处理如何使用本文件夹的名字作为文件的名字?

本帖最后由 332971606 于 2015-8-7 14:49 编辑

如路径为D:\vmoracle\caches\GuestAppsCache
    GuestAppsCache是文件夹,在这个文件夹里创建一个名为GuestAppsCache.txt的文件.
    bat是在 GuestAppsCache文件夹里运行

   能把这个GuestAppsCache 存储到变量里 a 里,
   然后用copy /b  1.txt+2.txt a.txt 吗?
作者: flyinnet9    时间: 2015-8-5 15:17

本帖最后由 flyinnet9 于 2015-8-5 15:22 编辑

创建一个名为GuestAppsCache.txt的空文件
  1. for /f %%a in ('echo %cd%') do cd. >%%~na.txt
复制代码

作者: bailong360    时间: 2015-8-5 15:59

说真的ls那习惯到底是谁带出来的...不止一次看到这种丧病的写法
  1. :: 在当前目录下创建
  2. @for /f "delims=" %%i in ("%cd%") do @echo;>"%%~nxi.txt"
复制代码
  1. :: 在当前目录下的子目录中创建
  2. @for /d %%i in (*) do @echo;>"%%~fi\%%~nxi.txt"
复制代码

作者: flyinnet9    时间: 2015-8-5 16:17

回复 3# bailong360


    哈哈,能抓到老鼠的都是好喵
作者: 332971606    时间: 2015-8-5 16:20

回复 4# flyinnet9


    能把这个GuestAppsCache 存储到变量里 a 里,
   然后用copy /b  1.txt+2.txt a.txt 吗?
作者: 332971606    时间: 2015-8-5 16:22

回复 3# bailong360


    感觉ls 写的代码量少些,随然都看不懂,

  能把这个GuestAppsCache 存储到变量里 a 里,
   然后用copy /b  1.txt+2.txt a.txt 吗?
作者: flyinnet9    时间: 2015-8-5 16:27

本帖最后由 flyinnet9 于 2015-8-5 16:30 编辑

后面部分改成do set "a=%%~na.txt"

copy /b  1.txt+2.txt %a%

360写的严谨
作者: pcl_test    时间: 2015-8-5 16:36

本帖最后由 pcl_test 于 2015-8-5 16:45 编辑

只是建立名为当前目录名的文件还可以这样
  1. set %1&&("%~f0" "%cd%")||cd.>"%~nx1.txt"
复制代码

作者: flyinnet9    时间: 2015-8-5 16:43

回复 8# pcl_test


    我在本机使用
  1. echo %~0
  2. echo %~f0
  3. echo %~d0
  4. echo %~n0
复制代码
经常得到些莫名其妙的东西,不知道是不是我机器有问题,不太敢用




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2