批处理生成几乎任何字符,包括Tab

One of my early posts on DosTips was a :chr routine that could convert a number into the corresponding character. The final code that appears near the end of the thread works really well, and is fast, but nearly all the characters must be embedded in the script. The TAB character in particular can be problematic, especially when trying to post the code on a forum site.

There is the undocumented %=ExitCodeAscii% dynamic variable that converts the most recent error code (from EXIT, not EXIT /B), but it is limited to codes between 32 and 126.

I had never seen a native method to generate a TAB character that works on all Windows versions - until now

I recently ran across this FORFILES documentation gem at SS64.COM:

代码如下:

To include special characters in the command line, use the hex code for the character in 0xHH format (ex. 0x09 is theTAB character, 0x22 is the double quote " character.)

Eureeka :idea: - The following simple printHex routine can generate any byte code value except 0x00 (nul), 0x0A (newline), and 0x0D (carriage return). 8)

@echo off
setlocal

::Define a Linefeed variable
set LF=^

::above 2 blank lines are critical - do not remove.

::Create a TAB variable
call :hexprint "0x09" TAB

::Print a string with encoded TABs
call :hexprint "A0x09B0x09C"

::Create a string variable with encoded TABs
call :hexprint "A0x09B0x09C" var
set var

exit /b

:hexPrint string [rtnVar]
 for /f eol^=^%LF%%LF%^ delims^= %%A in (
  'forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo(%~1"'
 ) do if "%~2" neq "" (set %~2=%%A) else echo(%%A
exit /b

I'll be playing Native American style flutes at a retreat in the Blue Ridge Mountains of Virginia for the next 4 days :D , without computer access :|
I wanted to post this before I left.

Enjoy the code, while I enjoy the crisp fall air. :)

Dave Benham

(0)

相关推荐

  • 批处理生成几乎任何字符,包括Tab

    One of my early posts on DosTips was a :chr routine that could convert a number into the corresponding character. The final code that appears near the end of the thread works really well, and is fast, but nearly all the characters must be embedded in

  • LeetCode题解C++生成每种字符都是奇数个的字符串

    目录 题目描述 整理题意 解题思路分析 具体实现 复杂度分析 代码实现 总结 题目描述 题目链接:1374. 生成每种字符都是奇数个的字符串 给你一个整数 n,请你返回一个含 n 个字符的字符串,其中每种字符在该字符串中都恰好出现 奇数次 . 返回的字符串必须只含小写英文字母.如果存在多个满足题目要求的字符串,则返回其中任意一个即可. 提示: 1 <= n <= 500 示例 1: 输入:n = 4输出:"pppz"解释:"pppz" 是一个满足题目要求

  • webpack4.0+vue2.0利用批处理生成前端单页或多页应用的方法

    批处理 前端现在在做项目的时候大多数遇到的都是单页面应用,但有时需要做多页面的时候,会把单页拿过来修改成多页面,如果代码多了,对单页或多页的配置可能会混乱,那么有没有更好的方式能把单页面和多页面不同的配置代码分开,能更清楚的分辩他们的区别,这里是利用 批处理 对前端构建进行部署 git地址目录分为三块 single //单页代码 share // 共用代码 many //多页代码 只需要用到 批处理 对其中两者进行合并就能生成想要的单页或多页应用,提示需要安装国内的 npm淘宝镜像 如果未安装的

  • JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)

    本文实例讲述了JS实现滑动菜单效果代码.分享给大家供大家参考.具体如下: 这里实现一个特效将网页中的选项卡滑动门都集中到一个网页中来,有些同志曾经为同一个页面布置两个滑动门而烦恼,参考一下本例子,相信你会找到答案,而且有各种排列方式的选项卡,总有一款会满足你. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-move-tab-nav-menu-demo-style-codes/ 具体代码如下: <!DOCTYPE html PUBLIC &qu

  • 用批处理生成网页文件并打开的代码

    非常的强啊,将下列内容用记事本做成bat文件,然后运行即可 复制代码 代码如下: @echo off  del CMD命令速查手册.htm >nul  echo.===============================  echo......请稍候,构造htm文件中.....  echo.===============================   >CMD命令速查手册.htm echo ^<head^>  >>CMD命令速查手册.htm echo ^<

  • php 随机生成10位字符代码

    复制代码 代码如下: function randStr($len) { $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz'; // characters to build the password from $string=''; for(;$len>=1;$len--) { $position=rand()%strlen($chars); $string.=substr($chars,$position

  • 批处理ASCII字符比较大小实际次序表

    在批处理中进行 ASCII 字符串大小比较, 本来想当然的以为其大小依据是 ASCII 字符码值, 可事实并非如此. 以下是一个 ASCII 可见字符(码值从 32 到 126) 共 95 个字符 在批处理字符串比较中的实际次序表, 编号从 00 到 94, 编号越小, 字符也越小. 观察此表, 总体次序 部分性地和 ASCII 次序相符. 有以下的几个特点: ① 所有的 标点符号 在 数字字符 的前面; 所有的 数字字符 在 字母的前面; ② 数字字符中, 按对应数字值大小排序; ③ 字母中,

  • Golang中生成随机字符串并复制到粘贴板的方法

    前段时间在生活中偶尔需要对某些文件进行重命名,而且是随机名字,刚 开始是手动重命名然后在键盘上胡乱打一些字母数字,时间长了发现也挺麻烦的,于是想到能不能用golang实现这个功能并且自动把生成的字符串 复制到粘贴板,然后生成exe文件,要用的是直接鼠标双击就行.说干就干. 网上搜了些相关资料,于是写了出来. 安装必要的库 go get github.com/atotto/clipboard 代码实现 package main import ( "fmt" "github.co

  • 批处理按要求将字符串分段输出的实现代码

    一.要求用批处理随机输出200个字符到1.txt中的一行,内容类同如下: 代码: xh45q3ma+remgofm54sevhrna4g5r8pl9cjardezqjwj3m8itamh0a4itzd6jz8cmrfmibmhr0wmccyb8qnp2qh4rvlwff6yr2ez4eo063u6viy7ppw+nzxaxe8vrm190eei_0dwx5e2kxbds-ae6e96c9_i9glw8mz+uf6uienx9od8bktfnjlwlqu-e1rcj33_+4bz 二.要求用批处理

  • 批处理制作二维码生成器

    这个程序不能直接支持 Unicode, 同样不能直接支持任何双字节或多字节字符(包括汉字), 但可以用十六进制转码的方式生成包含 Unicode (或其他任何编码)字符的二维码图形. 如果数据含有UTF-8 Unicode 字符时, 在数据头部加上 BOM (\xEF\xBB\xBF) 即可. 例如: \xEF\xBB\xBF\xE6\xB1\x89\xE5\xAD\x97 上面的代码表示中文字符 "汉字" 任何 ASCII 字符(\x00 到 \xFF)都可以用十六进制转码方式输入,

随机推荐