我想创建一个名为 ascii 007 的文件,它是钟形符号,不可打印。我试过了nano $'\007'
,但这只是创建了一个名为 ?; 的文件。cat ?
打印我放在文件中的测试内容。
那么如何创建一个文件,其名称由 ascii 编码设置而不是清楚地拼写出来?
一切可能实际上都按您的预期工作,但是您被两种不同的现象误导了:
ls
和其他一些实用程序?
默认显示不可打印的字符?
是一个匹配单个字符的 glob这会导致以下行为:
$ echo foo > $'\007'
$ ls
?
$ cat ?
foo
Run Code Online (Sandbox Code Playgroud)
所以看起来我们有一个字面命名的文件?
,对吗?实际上,这只是上述两种现象的巧合——该文件仍然被称为^G
:
$ printf '<%q>\n' *
<$'\a'>
$ ls -lb
total 0
-rw-r--r-- 1 chris chris 0 Aug 1 14:20 \a
Run Code Online (Sandbox Code Playgroud)
可能一切都按您的预期工作,尽管立即显示该文件实际上被称为?
.
归档时间: |
|
查看次数: |
1395 次 |
最近记录: |