我有文件: 1.pgm … 400.pgm连续的数字,从1到400都是相同的格式。 我想将它们复制到: 401.pgm … 800.pgm,这很基础,因为我需要更多的input数据 我想知道是否有任何快速的方法来做到这一点在Linux?
我无法删除备份副本的副本文件…我不记得它已通过的所有文件系统字符集。 无论如何,今天这里的文件: nas# ls -al ls: cannot access Sécurité: No such file or directory total 32 drwx—— 4 sambacam sambacam 20480 Jun 5 01:38 . drwxr-xr-x 3 sambacam sambacam 12288 Jun 5 01:38 .. d????????? ? ? ? ? ? S??curit?? nas# cd S* cd: 13: can't cd to Sécurité nas# rm "Sécurité" rm: cannot […]
我有充满.txt文件(2000个文件)的目录。 他们有很长的名字。 我想编辑他们的名字,只保留他们名字内的某个字母作为文件名。 喜欢这个 : UNCID_279113.TCGA-A6-2683-01A-01R-0821-07.100902_UNC7-RDR3001641_00025_FC_62EPOAAXX.1.trimmed.annotated.gene.quantification.txt 我想消除这个长名称,只是保持从TCGA开始的名字,并在三-之后结束; 例如,我的新文件名将是: TCGA-A6-2683-01A有谁知道我怎么能在一个目录中的整个文件做到这一点?
我只是以为我find了我的解决scheme,因为该命令在我的testing目录中工作。 grep -H -e 'author="[^"].*' *.xml | cut -d: -f1 | xargs -I '{}' mv {} mydir/. 但是在非test-direcory中使用该命令不起作用:这是错误消息: grep:未知选项 – O 用法:grep [OPTION] … PATTERN [FILE] … 尝试`grep –help'获取更多信息。 甚至没有这个工作: $ grep -H author *.xml 或这个: $ grep -H 'author' *.xml (同样的错误信息) 我怀疑它与文件名或文件的数量有一些关系。 我在非testing目录中有将近3000个文件,而在我的testing目录中只有20个。 在这两个目录中几乎所有文件名都包含空格和“ – ”。 一些更多信息: 我正在使用Cygwin。 我不允许更改文件名
所以,我有一个小小的代码,它使用RecursiveDiectoryIterator和RecursiveIteratorIterator来定位文件来查找目录中的所有文件。 然后,我检查,看看文件是否存在,对于一些文件,它不… $fromIterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir,FilesystemIterator::UNIX_PATHS | FilesystemIterator::SKIP_DOTS)); foreach ($fromIterator as $file) { if (!file_exists($file->getPathname())) print $file->getPathname() . "does not exist…\n"; } 我得到一些文件,如:TÜBITAK_UEKAE_Kök_Sertifika_Hizmet_Saglayicisi_Sürüm_3.txt不存在… 有什么特别的我需要做处理这些文件名?
我仍然是非常新的正则expression式,所以我想我可以确定一个string是否以不区分大小写的.csv结尾: (\\.(?i)(csv)) 但是,我不知道如何检查之前的所有内容至less是一个有效的Windows文件名字符,除了下划线,一个下划线和至less一个有效的Windows文件名字符(除下划线外)。 如何才能做到这一点?
我可能在我的Windows应用程序中发现了安全漏洞。 它从用户处获取一个string并应用以下逻辑: string fileName = userInput + ".notSecret"; return new FileStream(fileName, FileMode.Open, FileAccess.Read); 用户是否可以input任何字符,以便通过尽早终止文件名来input新的文件扩展名? 例如: “secret_file.Secret \ 0”
我并不十分注意所有这些东西,但我设法做到了这一点(不是很难) 但我无法find如何从文件名删除部分 我的代码看起来像这样 mkdir SD copy *@2x*.png SD mogrify -format png -resize 50% SD/*@2x*.png 它做了什么:它创build一个新文件夹,将名称中包含“@ 2x”的所有png图像复制到新文件夹中,然后调整它们的大小。 我想从所有resize的图像中删除“@ 2x” 谁能帮我?
我有我的目录中的文件列表: opencv_calib3d.so2410.so opencv_contrib.so2410.so opencv_core.so2410.so opencv_features2d.so2410.so opencv_flann.so2410.so opencv_highgui.so2410.so opencv_imgproc.so2410.so opencv_legacy.so2410.so opencv_ml.so2410.so opencv_objdetect.so2410.so opencv_ocl.so2410.so opencv_photo.so2410.so 他们是批量重命名的一系列错误的产物,现在我不知道如何从每个中删除中间的“.so”。 例如: opencv_ocl.so2410.so应该是opencv_ocl2410.so 这是我试过的: # attempt 1, replace the (first) occurrence of `.so` from the filename for f in opencv_*; do mv "$f" "${f#.so}"; done # attempt 2, escape the dot for f in opencv_*; do mv "$f" "${f#\.so}"; done # attempt […]
我有一些这样的名字的文件:'abcdefg_y_zz.jpg''abcdefg'是一个数字序列,而'y'和'zz'是字母。 我需要获取所有具有数字序列结尾的数字大于10的文件。具有大于10的“fg”的文件。 有没有人有一个想法如何在bash脚本中做到这一点?