我想创建一个程序,它将从ASCII表中创建名为字符的文件。因此,从1 128个文件127个为ASCII表中的每个字符创建一个文件
我做了这样的事情:
#!/bin/bash
temp=0;
for ((x=0; $x <= 177; x++)) ; do
temp=$((temp+1))
if [ "$temp" = 8 ]; then
temp=$((0))
x=$((x+3))
fi
echo "$x"
`touch $'\"$x"'`
done
我知道它写的很古怪,但是这是什么程序做的是: 从10月从0数到127(如此0至177oct)。问题是touch $'\"$x"'
无法正常工作。
尽管touch $'\101'
将生成一个名为“A”的文件。
任何人都可以帮助我吗?
请注意,您不能创建名称包含空字节的文件。你必须以'x = 1'开头。 – chepner
顺便提一下'touch'命令不会做任何事情:它会尝试将其输出作为命令执行,但没有任何操作。 –
相关,[在Unix和WIndows文件系统中哪些常见字符是非法的?](https://serverfault.com/q/242110/145545),[文件名中允许的字符](https://stackoverflow.com/q/4814040/608639)等 – jww