如何删除特定名称的所有文件夹而不删除其中的目录?

查特咖啡厅

如何删除具有特定名称(例如128Kbps_Songs)的所有文件夹而不删除其文件

例如,如果我的目录“ MP3_SONGS”的子目录为“ A”,“ B”,“ C”,并且每个子目录的目录都为MANY,则其中包含电影名称“ FILM_NAME1”,“ FILM_NAME2”,“ FILM_NAME3”我在此“ 128Kbps_Songs”文件夹中有特定的文件夹NAme(128Kbps_Songs),我拥有该电影mp3歌曲文件

如何删除每个Film_Name目录中的文件夹“ 128Kbps_Songs”,并必须在该FILM_NAME中获取这些mp3歌曲。(必须删除所有FILM_NAME中的128Kbps_Songs文件夹而不删除其中的mp3歌曲,必须在FILM_NAME中获取mp3目录..

MP3_SONGS (Parent Directory) ------ A , B, C

A (Sub Directory1) ------ FILM_NAME1 , FILM_NAME2
B (Sub Directory2) ------ FILM_NAME3 , FILM_NAME4
c (Sub Directory3) ------ FILM_NAME5 , FILM_NAME6

FILM_NAME1 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME1 (MP3 Files)
FILM_NAME2 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME2 (MP3 Files)

FILM_NAME3 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME3 (MP3 Files)
FILM_NAME4 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME4 (MP3 Files)

FILM_NAME5 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME5 (MP3 Files)
FILM_NAME6 (Directory) ---- 128Kbps_Songs (Directory) ------ FILM_NAME6 (MP3 Files)

Need Files in:
FILM_NAME1 (Directory)  ------ FILM_NAME1 (MP3 Files)
FILM_NAME2 (Directory)  ------ FILM_NAME2 (MP3 Files)

FILM_NAME3 (Directory)  ------ FILM_NAME3 (MP3 Files)
FILM_NAME4 (Directory)  ------ FILM_NAME4 (MP3 Files)

FILM_NAME5 (Directory)  ------ FILM_NAME5 (MP3 Files)
FILM_NAME6 (Directory)  ------ FILM_NAME6 (MP3 Files)
g_p

创建一个包含以下内容的简单脚本

#!/bin/bash

while IFS= read -r -d '' n; 
do   
   dir=$(dirname "$n") ; 
   mv "${n}"/* "${dir}"
   rmdir "${n}"
done < <(find -type d -name "128Kbps_Songs" -print0)

保存并使用以下文件使其可执行 chmod +x your_script

现在使用 ./your_script


这样IFS=做是为了保留文件名或路径中的空格。

  • -r -在读取的数据中禁用反斜杠转义和行继续的解释。

  • -d-将分隔符识别为数据端。在这里它清空了IFS

  • dirname用于128Kbps_Songs从find命令输出中删除最后一个文件夹名称(从./temp/MP3_SONGS/128Kbps_Songs./temp/MP3_SONGS

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何删除具有特定名称的文件夹

批处理命令删除所有具有特定名称的子文件夹

如何使用FileZilla递归删除具有特定名称的所有文件

如何在Python中删除具有特定名称的文件夹?

如何删除具有特定名称的所有子目录

批处理命令删除所有具有特殊字符的特定名称的子文件夹

Linux:如何删除文件夹中除具有特定名称的文件以外的所有文件?

Powershell删除具有特定名称的子文件夹

删除文件夹,但不删除其中的文件

遍历文件夹内的特定子文件夹并删除包含特定名称的文件-AIX

如何使用FileSystemWatcher监视父目录下特定名称的所有文件夹?

如何使用Powershell删除具有特定名称的所有文件夹

从某个目录中删除具有特定名称的文件和文件夹

删除UNIX中所有不包含特定名称的文件夹

如何删除当前目录子文件夹中存在的特定文件夹中的所有文件(不包括某些文件)?

如何删除所有子目录中具有给定名称的所有文件?

如何从/删除具有特定名称的所有文件?

删除文件夹中除具有特定名称的文件夹外的所有文件夹

删除ntfs驱动器上所有具有特定名称的文件夹

如何清除而不删除所有子文件夹中的所有文件(批处理文件除外)?

如何删除目录中没有特定文件夹及其内容的所有内容

从目录中的所有文件夹名称中删除第一个单词

如何删除除某些特定文件(目录中的许多文件夹)以外的所有文件?通过 bash 脚本

如何删除所有具有特定名称的文件?

如何删除文件夹中的所有目录

如何删除临时文件夹中的特定名称模式目录

删除所有子目录中具有特定名称的文件

如何遍历目录中的所有子文件夹,并删除具有特定文件名的文件

PHP - 如何删除 GCP 存储桶文件夹及其中的所有文件/文件夹?