当 Linux 文件名自动完成以‘不可见’“\ ”结尾时是什么意思?

当 Linux 文件名自动完成以‘不可见’“\ ”结尾时是什么意思?

有一个文件,在图形文件资源管理器中查看或ls在终端中查看时看起来像“LLCP2015.ASC”,但每当终端自动完成(通过tab)命令时,less LLCP2015.ASC它实际上最终完成看起来像

“减少 LLCP2015.ASC\”
请注意结尾的转义符和多余的空格(我说有多余的空格是因为自动完成后终端胡萝卜就停在那里)。我以前从未见过这种情况,很好奇是否有人知道这是什么,以及在尝试将此文件与glob或匹配时是否有任何特殊注意事项regex?谢谢。

该文件是可下载的公开数据文件这里(在数据文件/2016 BRFSS 数据 (ASCII)[ZIP] 下)我正在使用cent os 7

答案1

这只是意味着文件名以空格结尾。试试这个:

ls {file} | wc -c

现在计算您看到的字符数,并与给定的计数进行比较(减一以考虑添加的换行符)。您还可以使用:

ls {file} | hexdump -C

ls somefilespace.txt\  | hexdump -C
00000000  73 6f 6d 65 66 69 6c 65  73 70 61 63 65 2e 74 78  |somefilespace.tx|
00000010  74 20 0a                                          |t .|

20尾随空格。0a只是 LF 添加的ls,而不是文件名的一部分,

相关内容