Articles of 文件名

自动将linux文件名重命名为在Windows中合法的新文件名

我想将一个linux文件重命名为在Windows中合法的文件名。 它不应该超过允许的时间,不应该有窗口中不允许的字符。 有时我把文件的标题复制到一个文件名,并且有特殊的字符如– , ®或? 在从pdf复制和粘贴标题时,有时会在某些行的末尾出现某些字符。 在使用sed -n'l'时可以看到它们: echo 'Estrogen receptor agonists and estrogen attenuate TNF-α induced α apoptosis in VSC4.1 motoneurons.pdf' | sed -n 'l' Estrogen receptor agonists and estrogen attenuate TNF-\316\261 induce\ d$ \316\261$ apoptosis in VSC4.1 motoneurons.pdf$ 要么 echo 'A synthetic review of the five molecular Sorlie's subtypes in breast cancer' | […]

用这个bash文件名提取技术?

我有一个bash脚本的一部分,得到一个没有扩展名的文件名,但我试图了解这里真正发生了什么。 什么是“%%”? 有人可以详细说明bash在幕后做了什么吗? 这种技术如何在一般基础上使用? #!/bin/bash for src in *.tif do txt=${src%%.*} tesseract ${src} ${txt} done

创build新文件,但如果文件名已存在于bash中,则添加数字

我发现了类似的问题,但不是在Linux / Bash中 我想我的脚本创build一个给定名称的文件(通过用户input),但如果文件名已经存在,最后添加数字。 例: $ create somefile Created "somefile.ext" $ create somefile Created "somefile-2.ext" 谢谢阅读

我不应该允许在文件名中使用什么字符序列?

在testing之后,我发现linux允许除了/和null( \0 )之外的文件名中的任何字符。 那么我应该在文件名中不允许使用哪个序列? 我听说一个领先的-可能会混淆一些命令行程序,这对我来说并不重要,但如果他们决定收集一堆文件并用一些GNU程序过滤它,可能会困扰其他人。 有人build议我删除前导和尾随空格,我打算只是因为通常用户不意味着有前/后空格。 什么样的问题序列可能会存在,我应该考虑什么序列不允许? 为了方便起见,我也考虑不允许在窗口中使用非法字符。 我想我可能不允许破折号(破折号是一个合法的窗口字符)

为什么我的文件path中出现Unicode转义的SyntaxError?

我想要得到的文件夹被称为python,并在我的桌面上。 当我尝试去解决它时,出现以下错误 >>> os.chdir('C:\Users\expoperialed\Desktop\Python') SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

在Python中,如何获得文件的正确path?

Windows使用不区分大小写的文件名,所以我可以用以下任何一个打开相同的文件: r"c:\windows\system32\desktop.ini" r"C:\WINdows\System32\DESKTOP.ini" r"C:\WiNdOwS\SyStEm32\DeSkToP.iNi" 鉴于这些path,我怎么能find真实的情况? 我希望他们都生产: r"C:\Windows\System32\desktop.ini" os.path.normcase不这样做,它只是降低一切。 os.path.abspath返回一个绝对path,但是每一个都是绝对path,所以它不会改变它们中的任何一个。 os.path.realpath仅用于parsingWindows没有的符号链接,所以它与Windows上的abspath相同。 有没有一个简单的方法来做到这一点?

如何在文件名中用冒号在Windows中获取文件?

我得到的文件名称冒号上传文件的客户错误,即C:/uploads/test : doc.html 我假设一些Unix或Linux系统正在生成文件,但我不知道用户如何使用无效的文件名保存它们。 我已经编写了一个应该重新命名file upload。 我的问题是,我无法testing它,因为我无法获得文件名中冒号的Windows上的文件。

冒号/星号作为文件名分隔符?

我正在寻找一个字符来使用文件名分隔符(我存储在明文string中的多个文件名)。 Windows似乎不允许: , ? , * , < , > , " , | , /和\ in文件名。显然, \和/不能用,因为它们是指path中的某些内容。是否有任何其他原因不应该被使用?我只是想,类似于/或\ ,那些其他不被允许的字符可能有特殊的含义,我不应该假设不会在path名称。其他的7个字符中,对任何一个绝对安全的或绝对不安全的用于这个目的?

Python:获取存储在Windows中的文件名大小写?

虽然Windows不区分大小写,但它确实保存大小写的文件名。 在Python中,是否有任何方法获得一个文件名的情况下,因为它存储在文件系统? 例如,在一个Python程序中,我有文件名=“texas.txt”,但是想知道它实际上存储在文件系统上的“TEXAS.txt”,即使这对于各种文件操作来说是不重要的。

validationWindows文件名

如何确定给定的string是否是有效的Windows文件名? 我在想一些函数,我可以给一个string,并返回一个布尔值。 它应该检查不允许的字符(<>:“/ \ |?*)和保留字(CON,PRN等)。 isValidWindowsFilename('readme.txt'); // true isValidWindowsFilename('foo/bar'); // false isValidWindowsFilename('CON'); // false 我已经find了一个MSDN参考,描述了什么是有效的: http : //msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx 我也发现了同样的Java问题,除了它是Java而不是PHP: 在Windows上validation文件名