Questions tagged «filenames»

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

1
为什么getfacl从绝对路径名中删除前导/?
我正在学习有关CentOS / Red Hat 6的ACL。当我getfacl使用绝对路径运行时,得到以下输出: getfacl:从绝对路径名中删除前导“ /” 为什么需要这样做?在什么情况下需要使用-p或--absolute-names开关? 我的Wale Soyinka和Michael Jang的书甚至都没有提及这一点,在手册页中没有发现任何线索,而且似乎找不到直接解决此警告的网站。
10 linux  filenames  acl 

2
处理从find命令通过管道传输的文件名
我是Bash的新手,正在尝试做一些表面上看起来很简单的事情-在目录层次结构上运行find以获取所有* .wma文件,将输出管道传输到命令,然后将它们转换为mp3并将转换后的文件另存为.mp3。我的想法是该命令应如下所示(我不再使用音频转换命令,而是使用echo作为示例): $ find ./ -name '*.wma' -type f -print0 | xargs -0 -I f echo ${f%.*}.mp3 据我了解,-print0 arg将允许我处理具有空格的文件名(其中许多文件是音乐文件)。然后,我期待(由于xargs的原因)find中的每个文件路径都在f中捕获,并且使用子字符串match / delete从字符串末尾开始,我应该用mp3回显原始文件路径扩展名而不是wma。但是,我看到的不是这个结果,而是: *.mp3 *.mp3 *.mp3 *.mp3 *.mp3 *.mp3 *.mp3 *.mp3 *.mp3 ... 所以我的问题(除了特定的“我在这里做错了什么”之外)是吗?在字符串操作操作中,是否需要对管道操作结果所产生的值与变量赋值所导致的值进行不同的处理? ?

2
文件名中的特殊字符(\#033OA)
我在rsync期间遇到了一个非常顽固的错误,出现了一个小问题。这是由文件名中包含特殊字符的文件引起的。还有其他一些,但是我可以通过对文件名的编码进行一些转换来解决。但是,我什至找不到这个文件。 所以这是rsync所说的: ../.\#033OA.tex.pyD0MB" failed: No such file or directory (2) 首先要注意的是,字符代码不能是十六进制或八进制的,所以我用Google搜索了它,仅发现了这个。因此它可能是一个CURSOR UP字符(或不是)。我试过了 ls -la *`printf '\033OA'`* 无济于事。我也曾尝试将该目录的ls输出管道化,od但无济于事。 我还可以做些什么?还是我一直在寻找什么角色? 谢谢


7
按文件名长度查找文件
我想按文件名的长度查找所有文件。 例如,如果我想找到长度为1的文件,如a.go,b.go。 我放: grep '.\{1\}' file 但这是行不通的。我可以使用什么命令按文件名长度查找文件?

2
从文件名中删除前缀
我有一堆文件,如下所示: 04602635_b0294.DAT20120807164534 04602637_b0297.DAT20120807164713 04602638_b0296.DAT20120807164637 04602639_b0299.DAT20120807164819 04602640_b0298.DAT20120807164748 04602641_b0300.DAT20120807164849 04602650_b0301.DAT20120807164921 04602652_b0302.DAT20120807164956 我需要重命名它们以排除前缀。它需要看起来像这样。 b0294.DAT20120807164534 b0297.DAT20120807164713 b0296.DAT20120807164637 b0299.DAT20120807164819 b0298.DAT20120807164748 b0300.DAT20120807164849 b0301.DAT20120807164921 b0302.DAT20120807164956 编辑 我忘了补充一点,我正在使用Solaris。


2
删除名称中没有字符串的文件
我要删除名称中不包含字符串“ 999”(不带“'')的文件。 我努力了: grep -vlr 999 . | xargs -0 rm -f -- find . -print0 | grep --null-data -v 999 | xargs -0 rm -- 但是它们都不起作用。我正在使用bash 3.2.57的macOS Sierra。
9 bash  osx  filenames  rm 

2
用wget下载具有真实名称的文件
我正在尝试使用从Web站点通过HTTP下载文件wget。 当我使用时: wget http://abc/geo/download/?acc=GSE48191&format=file 我只有一个名为的文件index.html?acc=GSE48191。 当我使用时: wget http://abc/geo/download/?acc=GSE48191&format=file -o asd.rpm 我得到了asd.rpm,但是我想使用实际名称下载,并且不想手动更改下载文件的名称。
9 filenames  wget 

2
是否可以为流程伪造特定路径?
我正在尝试在不具有root用户的多个用户的linux服务器上运行ADB(与我的android模拟器一起玩)。adb守护程序将其日志写入文件/tmp/adb.log,不幸的是,该日志似乎已硬编码到ADB中,这种情况不会改变。 因此,adb无法运行,给出了明显的错误:cannot open '/tmp/adb.log': Permission denied。该文件是由另一个用户创建的,/tmp具有粘性。如果我通过adb nodaemon server将adb 写入stdout来启动它,则不会发生任何错误(我还将其端口设置为唯一值以避免冲突)。 我的问题是:有什么方法可以使ADB写入另一个文件/tmp/adb.log?更一般而言,是否有一种方法可以创建一种特定于过程的符号链接?我想将所有文件访问重定向/tmp/adb.log到一个文件~/tmp/adb.log。 同样,我不是服务器的root用户,所以chroot,mount -o rbind并且chmod不是有效的选项。如果可能的话,我不想修改ADB的来源,但是如果没有其他解决方案,我一定会做的。 PS对于特定的ADB案例,我可以求助于adb nodaemon serverwith nohup和输出重定向,但是一般问题仍然很重要。
9 linux  filenames  adb 

1
(为什么)使用ls -A列出隐藏文件不好?
我想列出当前目录中的每个文件,包括隐藏文件。我不想包括父目录(..)和当前目录(。)。 我找到了这个: 如何遍历除当前目录和父目录以外的所有隐藏文件 最后,有人说这ls -A是要走的路,但它被否决了。但是,它似乎有效。这有什么错ls -A?
9 ls  filenames 

6
使用basename解析文件中包含的路径列表
我正在运行Mac OSX,并尝试使用命令行查找具有相同名称的文件数。 我尝试使用以下命令: find ~ -type f -name "*" -print | basename | sort | uniq -d > duplicate_files 它不起作用!当我执行以下操作时: find ~ -type f -name "*" -print > duplicate_files 然后plicate_files确实包含了我所有文件的路径。因此,我认为问题出在basename-它不接受标准输入。然后,我尝试了以下操作: basename $(find ~ -type f -name "*" -print) > duplicate_files 但这又似乎不起作用。在互联网上搜索似乎并没有带来太多乐趣。任何想法最欢迎。

3
在Bash中选择Unicode文件名
好; 假设我在Bash中,并且一个文件夹中有几个文件。其中有几个被命名为file☠☡☢☣.txt,其中☠☡☢☣以疯狂的无法键入的unicode字符开头。我将如何提及其中之一?按Tab仅自动完成到file,然后希望您键入一个疯狂的字符。有什么方法可以告诉bash“选择您刚刚给我的列表中的第三个”?

2
如何创建一个空名称的文件?
我不知道如何,但是我创建了一个文件名为空的文件,我怀疑那里是否有空格(我将在末尾解释原因): chaouche@karabeela /mnt/ubuntu/storage $ ls total 352K drwx------ 3 chaouche chaouche 4.0K Feb 12 11:00 drwxr-xr-x 4 chaouche chaouche 4.0K Apr 14 23:13 AUDIO drwxr-xr-x 5 chaouche chaouche 4.0K Jul 20 22:25 BACKUPS -rw-r--r-- 1 chaouche chaouche 310K Jun 15 13:00 cv_yassine_chaouche_2012.pdf drwxr-xr-x 2 chaouche chaouche 4.0K Jun 10 22:16 …

2
如何将所有文件移动(或复制)到具有相同文件名前缀的目录中?
使用重击 假设我有一堆文件随机放置在父目录中~/src,我想获取所有与某个后缀匹配的文件并将其移动(或复制)到~/dist目录中。 为此,我们假设所有文件名都具有以下命名约定: <filename_prefix>.<filename_suffix> 我发现这是一种获取所有具有特定文件的文件filename_suffix并将其放入dist文件夹的快速方法: mkdir ~/dst find source -name "*.xxx" -exec mv -i {} -t ~/dst \; 现在再走一步...在这种情况下filename,如何使用find的输出,并使用filename_prefix生成具有相同名称的目录,~/dist然后将所有带有该前缀的文件移动(或复制)到适当的目录中? mkdir ~/dst find source -name "*.xrt,*.ini,*.moo" -exec mv -i {} -t ~/dst \; 本质上,我如何更改以上命令(或可能使用其他命令),以创建像这样的结构 (输出) ~/dist/people/people.xrt ~/dist/games/games.xrt ~/dist/games/games.moo ~/dist/games/games.ini ~/dist/monkeys/monkeys.ini ~/dist/monkeys/monkeys.xrt 从这样的目录树? (输入) ~/src/xrt/people.xrt ~/src/xrt/games.xrt ~/src/conf/games.ini ~/src/pack/monkeys.xrt ~/src/e344/games.moo ~/src/e344/monkeys.moo ~/src/en-us/monkeys.ini

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.