将所有递归文件/文件夹移动到 Thunar 中的当前文件夹

将所有递归文件/文件夹移动到 Thunar 中的当前文件夹

抱歉,如果这个问题已经得到解答,我找不到它。假设我每个月都有一个文件夹,每个月的文件夹里面都有 4 或 5 层深的文件和文件夹。所以:

  1. 四月 -

    -文件夹 1

    -files
    

    -文件夹 2

    -Folder 2b
    
       -Files
    

    -4 月份的文件

  2. 可能 -

    /文件夹 2

    /Files
    

    /5 月份文件

等等。有没有办法在 thunar 中添加自定义操作,以便我可以将当​​前文件夹的所有递归文件(仅文件)拉到我所在的当前文件夹中?

答案1

我必须使用:

fdfind -x cp {} ./{/}

但这确实有效。

有没有办法删除空的文件夹?

答案2

假设您有以下文件夹/文件结构:

tree             
.
├── 1
│   ├── 4
│   │   └── file14
│   └── file1
├── 2
│   ├── 5
│   │   └── file25
│   └── file2
└── 3
    ├── 6
    │   └── file36
    └── file3

然后,您可以使用fd命令行与 结合来cp运行此命令(从根文件夹)。请注意,我使用的是cp您可能想要使用的命令mv

fd -t f -x cp {} ./{/}

现在您已拥有(在根目录中):

1  2  3  file1  file14  file2  file25  file3  file36

fd可以从以下网址下载这里

选项解释(来自man fd):

-t f find only files
-x   executes a command
     {}   path (of all search results
     {/}  basename

现在最后一部分是从该命令创建一个脚本并将其添加到 thunar 操作中使用自定义操作窗口为了那个原因。

相关内容