Batch file %%的tempfile.txt?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)echo%strlength%这个对我来说很好。但这不是真正的问题。我想知道的是,我如何在文件名后回显x个点,这样我就可以得到文件在同一行上

Batch file %%的tempfile.txt?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)echo%strlength%这个对我来说很好。但这不是真正的问题。我想知道的是,我如何在文件名后回显x个点,这样我就可以得到文件在同一行上,batch-file,count,filenames,variable-length,Batch File,Count,Filenames,Variable Length,%%的tempfile.txt?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)echo%strlength%这个对我来说很好。但这不是真正的问题。我想知道的是,我如何在文件名后回显x个点,这样我就可以得到文件在同一行上的大小为%%设置“strvar=Count me 1234”ECHO%strvar%>tempfile.txt?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)echo%strlength%这个对我来说很好。



%%的tempfile.txt
?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)
echo%strlength%
这个对我来说很好。但这不是真正的问题。我想知道的是,我如何在文件名后回显x个点,这样我就可以得到文件在同一行上的大小<代码>为%%设置“strvar=Count me 1234”
ECHO%strvar%>tempfile.txt
?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)
echo%strlength%
这个对我来说很好。但这不是真正的问题。我想知道的是,我如何在文件名后回显x个点,这样我就可以得到文件在同一行上的大小<代码>为%%设置“strvar=Count me 1234”
ECHO%strvar%>tempfile.txt
?在(tempfile.txt)DO(SET/A strlength=%%~z?-2)
echo%strlength%
只是出于好奇,你找到的计算文件名长度的脚本在哪里?这里:)啊。好的,您可以用自己的函数替换我的
:length
函数。:)我的答案至少应该说明确定需要多少点的逻辑。好的:)非常感谢你的答案!我将尝试一下:)我刚刚运行了一些测试,对于包含35个文件的dir,我的
for/l
循环比您链接的方法快150毫秒。杰布的方法快了约40毫秒,但由于某种原因(尽管逻辑看起来合理)没有起作用。foxidrive下面的答案快了大约4倍,但没有根据最长的文件名长度计算任何点填充变化。只是出于好奇,你找到的计算文件名长度的脚本在哪里?这里:)啊。好的,您可以用自己的函数替换我的
:length
函数。:)我的答案至少应该说明确定需要多少点的逻辑。好的:)非常感谢你的答案!我将尝试一下:)我刚刚运行了一些测试,对于包含35个文件的dir,我的
for/l
循环比您链接的方法快150毫秒。杰布的方法快了约40毫秒,但由于某种原因(尽管逻辑看起来合理)没有起作用。foxidrive下面的答案快了大约4倍,但没有根据最长的文件名长度计算任何点填充变化。只是出于好奇,你找到的计算文件名长度的脚本在哪里?这里:)啊。好的,您可以用自己的函数替换我的
:length
函数。:)我的答案至少应该说明确定需要多少点的逻辑。好的:)非常感谢你的答案!我将尝试一下:)我刚刚运行了一些测试,对于包含35个文件的dir,我的
for/l
循环比您链接的方法快150毫秒。杰布的方法快了约40毫秒,但由于某种原因(尽管逻辑看起来合理)没有起作用。foxidrive下面的答案快了大约4倍,但没有根据最长的文件名长度计算任何点填充变化。只是出于好奇,你找到的计算文件名长度的脚本在哪里?这里:)啊。好的,您可以用自己的函数替换我的
:length
函数。:)我的答案至少应该说明确定需要多少点的逻辑。好的:)非常感谢你的答案!我将尝试一下:)我刚刚运行了一些测试,对于包含35个文件的dir,我的
for/l
循环比您链接的方法快150毫秒。杰布的方法快了约40毫秒,但由于某种原因(尽管逻辑看起来合理)没有起作用。下面foxidrive的回答快了大约4倍,但没有根据最长的文件名长度计算任何点填充变化。谢谢,这也很好!但是有没有办法使用像Æ、Ø、Ø、æ、å、è这样的特殊字符呢?编辑:没关系,我刚刚添加了
chcp1252
:)谢谢,这也很好!但是有没有办法使用像Æ、Ø、Ø、æ、å、è这样的特殊字符呢?编辑:没关系,我刚刚添加了
chcp1252
:)谢谢,这也很好!但是有没有办法使用像Æ、Ø、Ø、æ、å、è这样的特殊字符呢?编辑:没关系,我刚刚添加了
chcp1252
:)谢谢,这也很好!但是有没有办法使用像Æ、Ø、Ø、æ、å、è这样的特殊字符呢?编辑:没关系,我刚刚添加了
chcp 1252
:)我觉得自己太愚蠢了,没有在我的问题中写这篇文章,但是在PowerShell中也有(更简单的)方法来做到这一点吗?我测试了脚本顺便说一句,太棒了!我相信有一种更简单的方法可以在PowerShell中编写,但如果我试图发现它,那将对您造成伤害。您最好将其作为带有PowerShell标签的新问题发布。我的PowerShell fu不太强大。我觉得自己太笨了,没有在我的问题中写下这句话,但有没有(更简单的)方法在PowerShell中也能做到这一点?我测试了脚本顺便说一句,太棒了!我相信有一种更简单的方法可以在PowerShell中编写,但如果我试图发现它,那将对您造成伤害。您最好将其作为带有PowerShell标签的新问题发布。我的PowerShell fu不太强大。我觉得自己太笨了,没有在我的问题中写下这句话,但有没有(更简单的)方法在PowerShell中也能做到这一点?我测试了脚本顺便说一句,太棒了!我相信有一种更简单的方法可以在PowerShell中编写,但如果我试图发现它,那将对您造成伤害。您最好将其作为带有PowerShell标签的新问题发布。我的PowerShell fu不太强大。我觉得自己太笨了,没有在我的问题中写下这句话,但有没有(更简单的)方法在PowerShell中也能做到这一点?我测试了脚本顺便说一句,太棒了!我相信有一种更简单的方法可以在PowerShell中编写,但如果我试图发现它,那将对您造成伤害。您最好将其作为带有PowerShell标签的新问题发布。我的力量不够强大。
45545.ext.................8.23 MB
12341231.ext..............5.87 MB
543646767676.ext..........6.23 MB
34563456345634563.ext.....3.87 MB
@echo off
setlocal enabledelayedexpansion
set "line="
for /L %%a in (1,1,1000) do set line=!line!.
for %%a in (*) do (
   set "var=%%a%line%"
   echo !var:~0,80!  %%~za
)
pause