如何通过右键菜单将选定的文件移动到新文件夹中?

如何通过右键菜单将选定的文件移动到新文件夹中?

我最近从 OSX 切换到 Xubuntu 14.04,我很喜欢这种新发现的自由。在很大程度上,我已经设法根据自己的需求和喜好定制了我的 Linux 操作系统。但有一个功能我最想念。我需要非常快速地将一堆项目扔进一个文件夹中,因为我正在处理大量图像和文本文件。

在 OS X 中,有一个巧妙的快捷方式可以一次性管理操作,这样您就不必创建文件夹,然后再采取进一步的操作来填充它。我所需要做的就是在 Finder(文件管理器)中选择我想要的项目,右键单击它们以调出 OS X 的上下文菜单,然后选择第一个选项:新建带选择的文件夹。

然后,Finder 将创建一个新文件夹,并将这些项目安全地存储在其中,自动为您省去至少一步。超级简单!现在我想知道如何在 Linux 中做到这一点?或者最重要的是在 Xubuntu 中?

任何帮助将不胜感激!

答案1

首先,这里有两个版本的脚本,可以将所有选定的文件移动到新文件夹中。

版本1这将要求输入新的文件夹名称:

#!/bin/bash

# Define a function that launches the zenity input dialog
get_foldername(){
    zenity --entry --width=300 --title="Create New Folder" --text="Enter the new name:"
}

# Ask user for foldername
foldername=$(get_foldername) || exit

# Try to create a new folder with the name from user input
errorString=$( mkdir "$foldername" 2>&1 )

# If an error occurs show error dialog and ask again for foldername
while [ -n "$errorString" ]; do
    zenity --error --title="$( echo $errorString | cut -d: -f3- )" --text="$( echo $errorString | cut -d: -f2- )"  || exit 

    # Ask again for foldername
    foldername=$(get_foldername) || exit
    errorString=$( mkdir "$foldername" 2>&1 )
done

# Move selected files to the new folder
mv -t "${PWD}/${foldername}" "${@}" 

版本2这会将文件粘贴到新文件夹中,并以当前日期命名:

#!/bin/bash

foldername=$( echo `date +%Y-%m-%d`"-"`date +%H%M%S` )

# Try to create a new folder with the current date and time
errorString=$( mkdir "$foldername" 2>&1 )

if [ -n "$errorString" ]; then 
    zenity --error --title="$( echo $errorString | cut -d: -f3- )" --text="$( echo $errorString | cut -d: -f2- )"
    exit
fi

# Move selected files to the new folder
mv -t "${PWD}/${foldername}" "${@}"

将脚本(或两者但在不同的文件中)保存在目录中,$HOME/bin调用如下命令move-to-new-folder.sh并使其可执行:

在此处输入图片描述


现在我们必须将脚本添加到 Thunar。有两种方法可以将脚本添加到 Thunar 的右键菜单中(据我所知):

在此处输入图片描述

发送至方法:

  1. 创建文件夹$HOME/.local/share/Thunar/sendto

  2. 在此新文件夹中创建一个文件并将其命名为move-to-new-folder.desktop

文件内容:

[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
TryExec=/home/username/bin/move-to-new-folder.sh
Exec=/home/username/bin/move-to-new-folder.sh %F
Icon=/usr/share/icons/elementary-xfce/actions/48/folder-move.png
Name=New Folder

3.使文件可执行

更多信息:http://docs.xfce.org/xfce/thunar/send-to

自定义操作方法:

在此处输入图片描述

更多信息:http://docs.xfce.org/xfce/thunar/custom-actions

答案2

我不知道您是否可以使用 Xubuntu 中的默认文件管理器 Thunar 来执行此操作。在 Thunar 中您可以执行的所有操作(您可能已经发现)是 (a) 创建一个新文件夹,然后 (b) 突出显示一堆文件并将它们拖入其中 - 即两个步骤而不是一个步骤。但是您不限于使用 Thunar。打开 Ubuntu 软件中心,您会发现其他几个可以尝试的文件管理器;如果您在线搜索“linux 文件管理器”,还会发现更多。也许其中一个会具有您正在寻找的功能。

相关内容