我在Linux中有一个文件夹,其中包含一些模拟结果的.csv
文件。
文件名如下:
run_0_0.020000_0.010000_15.0_10.0_T0_RealNet.csv
run_0_0.030000_0.090000_10.0_10.0_T0_RealNet.csv
run_0_0.030000_0.080000_12.0_10.0_T0_RealNet.csv
我想删除除带有15.0_10.0_T0_
的文件以外的所有文件
答案 0 :(得分:3)
您可以使用find
命令及其内置的-delete功能,但如果仅$ cp /path/to/dir/*15.0_10.0_T0_* /other/dir
然后删除原始目录,则可能会更简单。然后,您可以将新目录替换原来的目录。您可以使用$ rm -rf /path/to/dir
一次删除旧目录及其所有内容。
答案 1 :(得分:1)
例如,如果您不想删除包含15.0_10.0_T0_的文件,则可以使用find:
find . -type f ! -name '*15.0_10.0_T0_*' -delete
答案 2 :(得分:0)
另一个删除请求文件以外的所有内容的变体:
ls --ignore="*15.0_10.0_T0_*" | xargs rm
或者简短地说,不要问也不要删除目录版本(请小心:)):
ls -I "*15.0_10.0_T0_*" | xargs rm -rf
答案 3 :(得分:-2)
使用mv /dire/15.0_10.0_T0_*到目标目录 然后使用sudo rm -rf目录名删除整个目录。 希望它能起作用。