Questions tagged «filenames»

文件名是用于在给定文件系统上唯一标识文件的名称。


4
eCryptfs允许的最大文件名(和文件夹)大小是多少?
我是eCryptfs的新用户,但有一个非常基本的问题,我找不到任何地方。我对通过使用Linux的Synology NAS使用eCryptfs感兴趣。 尝试通过Synology的加密应用程序(eCryptfs)加密我的文件夹(EXT4)时,遇到错误,指出我的文件名长度不能超过45个字符(因此,没有加密)。 如果限制的确是45个字符,则eCryptfs对于大多数人可能不是可用的工具。 使用eCryptfs加密文件和文件夹时,允许的最大文件名大小是多少?是255个字符吗?

9
如何列出不带目录的文件并按名称过滤(ls选项)
我有一个名为的目录uploads。它包含一堆文件以及一些子目录,这些子目录又包含文件。 有什么办法可以(一步)执行以下操作: 仅列出根上载目录中的文件-我不想看到子文件夹名称或其内容; 和 不要列出任何以 t_ 我知道该-d标志,但并不能完全满足我的需求。
42 ls  filenames 


7
〜/ Documents是相对路径还是绝对路径?
这只是一个词汇问题,但一直在我脑海中回荡。 它来自LPIC准备书中的实践考试。根据这本书的正确答案~/Documents是相对目录,因为它是相对于主目录的。 但是,这本书包含错别字和错误的比率很高,所以我不能认为那里写的一切都是理所当然的。在这里我并不同意,因为对我而言,它~充当由Shell扩展为变量内容$HOME或当前用户主目录路径(参见参考资料man bash)的变量,因此实际路径/home/myuser/Documents确实是绝对目录。 即使是Wikipedia,这一次对我似乎也无济于事(即使似乎确认这本书在这方面是错误的): 无论当前工作目录如何,绝对路径或完整路径都指向文件系统中的同一位置。为此,它必须包含根目录。 相反,相对路径从某些给定的工作目录开始,从而避免了提供完整的绝对路径。 再次重申,我不同意:根据此定义,/opt/kde3/bin/../lib不依赖于当前工作目录的路径应该是绝对路径,但是我目前对此的理解与本书的作者相匹配,因此该路径是相对路径。 快速的Web搜索只是增加了我的无奈,根据韦氏词典: 绝对路径 -相对于根目录的路径。它的第一个字符必须是路径名分隔符。 那么$HOME/Documents,甚至$HOME不被认为是绝对目录?还是这个定义意味着变量扩展?外壳的~特征如何?我在某处可以找到相对目录和绝对目录的可靠定义,而且我一路走错了吗?
37 shell  filenames 

2
在zsh中完成avfs伪目录
在某些情况下,如何调整zsh的完成系统以完成“伪造”文件? 更准确地说,AVFS文件系统通过在每个档案旁边创建一个“伪目录”,将档案作为目录公开。默认情况下,它将在其安装点下复制整个目录层次结构~/.avfs。此外,在之下~/.avfs,对于每个档案文件(例如)/tmp/foo.zip,除了档案文件本身之外~/.avfs/tmp/foo.zip,还有一个名为的目录~/.avfs/tmp/foo.zip#,用于显示档案的内容。但是,此额外目录未出现在的列表中~/.avfs/tmp:仅在明确请求时存在。(这类似于某些自动安装器的操作。) mountavfs cd ~/.avfs/tmp/foo.zip\# 当我输入上述命令时,由于没有这样的目录,因此不会foo.zip#在下方显示为~/.avfs/tmp/补全。我怎样才能告诉zsh,只要有一个完整路径$arc匹配~/.avfs/**/*.(tgz|zip)¹ 的文件,它就应该假装存在一个名为的目录${arc}#? (请注意,我希望完成操作可用于对_files或的每次调用_dirs,而不仅是cd命令的_files调用。如果可能的话,我希望不必重复该函数的代码。) ¹ 以及所有其他扩展名


1
如何在zip中列出文件而不需要命令行中的其他信息
在我的bash命令行中,当我使用时,unzip -l test.zip我得到如下输出: Archive: test.zip Length Date Time Name --------- ---------- ----- ---- 810000 05-07-2014 15:09 file1.txt 810000 05-07-2014 15:09 file2.txt 810000 05-07-2014 15:09 file3.txt --------- ------- 2430000 3 files 但是我只对包含文件详细信息的行感兴趣。 我试图使用grep进行过滤,如下所示: unzip -l test.zip | grep -v Length | grep -v "\-\-\-\-" | g -v Archive | grep -v …

8
在文件名中获取扩展名
我如何从bash获取文件扩展名?这是我尝试过的: filename=`basename $filepath` fileext=${filename##*.} 通过这样做,我可以bz2从路径中得到扩展/dir/subdir/file.bz2,但是路径有问题/dir/subdir/file-1.0.tar.bz2。 如果可能,我希望仅使用bash而不使用外部程序的解决方案。 为了明确说明我的问题,我正在创建一个bash脚本,仅需通过一个命令即可提取任何给定的存档extract path_to_file。如何提取文件由脚本通过查看其压缩或归档类型来确定,该类型可以是.tar.gz,.gz,.bz2等。我认为这应该涉及字符串操作,例如,如果我得到扩展名,.gz则我应该检查它.tar之前是否有字符串.gz-如果有,扩展名应该是.tar.gz。
33 bash  shell  filenames 


5
Vim:所有可能的交换文件扩展名是什么?
在vim中编辑文件时,它会生成一个交换文件,其名称与当前文件相同,但具有.swp扩展名。 如果.swp已经采取,则将生成一个一个.swo一个。如果已经采取,那么您将获得.swa,等等。 我找不到有关这些文件的确切命名-后备顺序是什么的任何文档,任何人都可以通过选择什么约定来澄清扩展名吗?
32 vim  filenames 

2
find(1):如何实现星号通配符以使其在某些文件名上失败?
在文件名使用UTF-8的文件系统中,我的文件名称错误;它显示为:D�sinstaller,根据zsh:的实际名称 D$'\351'sinstaller,Latin1表示Désinstaller,本身是法式野蛮的“卸载”。Zsh不会将其与之匹配,[[ $file =~ '^.*$' ]]但会与之匹配(*这是我期望的行为)。 现在,我仍然希望在运行时能够找到它find . -name '*'-事实上,我绝不会期望文件名能够通过该测试。然而,随着LANG=en_US.utf8,该文件确实不露面,我必须集LANG=C(或en_US,或'')为它工作。 问题: 背后的实现是什么,我如何预测结果? 信息:Arch Linux 3.14.37-1-lts,查找(GNU findutils)4.4.2

4
文件名中是否不允许有空格?
据说在一般的Unix和Linux上,应该避免文件名(普通文件,dir,链接,设备文件等)中包含空格。 但是我一直都这样做。对于内部带有空格的文件名, 在Nautilus中,空格字符显示为空格。 在Bash终端中,我要么\ 用来表示一个空格,要么将文件名括在一对双引号中。 在某些应用程序的文件中(Nautilus,不确定操作系统是否也会这样做),文件名用空格代替%20。 文件名中确实不允许有空格吗? 如何正确使用或处理文件名中的空格?
31 filenames 


10
处理带有特殊首字符的文件名(例如♫)
我最近遇到了一个名称以字符“ the”开头的文件。我想复制此文件,将其输入ffmpeg,并在终端中以其他各种方式引用它。我通常会自动完成怪异的文件名,但这会失败,因为我什至无法输入第一个字母。 我不想切换到鼠标来执行复制粘贴操作。我不想为可能的情况记住一堆代码。我的临时解决方案是切换到vim,粘贴!ls并复制有问题的字符,然后退出并将其粘贴到终端中。这行得通,但是非常可怕。 有没有更简单的方法来处理这种情况? 注意:如果使用鱼壳,它会改变一切。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.