PhotoRec 完成后,要按照什么步骤来组织/浏览文件

PhotoRec 完成后,要按照什么步骤来组织/浏览文件

您能否建议我在 PhotoRec 创建了一堆这样的目录后要执行哪些步骤

RECUP_DIR.1
RECUP_DIR.2
RECUP_DIR.3
RECUP_DIR.4

这个文件夹有什么含义吗?它们只是随机名称吗?

例如,我希望所有图片(png/jpeg/类似扩展名)都放在同一个文件夹中,而所有 DOC 图像都放在另一个文件夹中,等等

答案1

解决方案 1

创建一个名为MergeByExt.sh

if [ "$#" -ne 2 ] || ! [ -d "$1" ]; then
  echo "Usage: $0 DIRECTORY EXTENSION" >&2
  exit 1
fi

folder=$1
ext=$2

mkdir $2
exts=$(find $folder -type f | grep $2)

for f in $exts; do
    mv $f $2
    echo $f moved to $2
done

然后你可以像这样调用它(例如将所有 MP3 文件合并到一个文件夹中)

MergeByExt.sh /path/to/photorec/recover/root/folder .mp3

该文件夹将在您执行脚本的路径中创建


解决方案 2

此解决方案将在每个 RECUP_DIR.X 目录内创建一个包含每个扩展的文件夹

像这样

RECUP_DIR.1\txt
RECUP_DIR.1\png
RECUP_DIR.1\jpg
RECUP_DIR.1\doc

将此文本保存至通过扩展

dir=$1
if [ "x$dir" != "x" -a -d "$dir" ] ; then
    cd "$dir"
fi

dir=$(pwd)
basedir=$(basename "$dir")

exts=$(find . -mindepth 1 -maxdepth 1 -type f -print | grep '^\./.*\.' | sed 's/^.*\.\([^.][^.]*\)$/\1/' | sort -u)

for e in $exts; do

    # Skip extension if this directory is already named by extension.
    if [ "$basedir" = "$e" ] ; then
        continue
    fi

    mkdir "$e"
    for file in *.$e; do
        mv "$file" "$e"
    done
done

您可以转到 PhotoRec 文件夹恢复文件的主文件夹并运行此命令

find . -depth -type d -print -exec /path/to/script/ByExtension.sh {} \;

取自http://ubuntuforums.org/showthread.php?t=1575901

相关内容