[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何在文件中的字符串里面加一空格?

现有一文本文件1.txt,内容为abcdefghijklmnopqrstuvwxyz,如何编写批处理使输出
a b c d e f g h i j k l m n o p q r s t u v w x y z?

  1. @echo off&SetLocal EnableDelayedExpansion
  2. Set n=0
  3. Set c=
  4. For /f %%i in (1.txt) do Call :hello %%i
  5. pause >nul & exit
  6. :hello
  7. Set a=%1
  8. Set b=!a:~%n%,1!
  9. if not "!b!"=="" Set /p c=%c% %b%<nul
  10. Set /a n+=1
  11. if not "!b!"=="" goto hello
复制代码

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%a in ("abcdefghijklmnopqrstuvwxyz") do (
  3. set var=%%a
  4. for /l %%i in (0,1,100000) do if not "!var:~%%i,1!"=="" set /p=!var:~%%i,1! <nul
  5. )
  6. pause>nul
复制代码
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

  1. gawk -F "" "$1=$1" a.txt
复制代码

TOP

  1. sed "s/./& /g" a.txt
复制代码

TOP

good
good
good
good

TOP

只有单字节字符的文本可以这样:
  1. @echo off&setlocal enabledelayedexpansion
  2. set n=1
  3. for /f "tokens=1* delims=:" %%a in ('
  4.    "cmd /u /c type 1.txt|more|findstr /n ."
  5. ') do (
  6.    if %%a neq !n! (
  7.       echo;!str:~1!
  8.       for /l %%b in (!n! 9 %%a) do if %%b neq !n! echo;
  9.       set str=
  10.    )
  11.    set /a n=%%a+1
  12.    set str=!str! %%b
  13. )
  14. echo;!str:~1!
  15. pause
复制代码

TOP

返回列表