【发布时间】:2020-01-24 22:17:22
【问题描述】:
虽然听起来很简单和天真,但我正在为find 和file 命令而苦苦挣扎。我使用-exec file 是因为我需要获取的特定文件在文件名中没有它们的扩展名,这消除了find 中-name 选项的可能性。请参阅下面的find 命令和工作区:
我当前的代码:
workspace=/PATH/
### --- Example hierarchy of where all the files needed are located recursively:
##### -----("$workspace"/ID/ID/DICOM/cat)
####### ------- 'cat' is a .dcm file, without ".dcm" in its name
PETS=`find . -type f -exec file {} \; | grep "DICOM"`
我当前的输出,看起来像 find 的典型输出:
./PATH/ID/ID/DICOM/cat: DICOM medical imaging data(1)
默认情况下,我会这样做以将其分配给变量:
PETS=($(find . -type f -exec file {} \; | grep "DICOM"))
但是,我仅通过此输出获得第一个实例(当有许多其他 DICOM 文件位于与工作目录相关的位置时),这几乎是我上面 (1) 中当前输出的截断版本
./PATH/ID/ID/DICOM/cat:(2)
如何从 (1) 或 (2) 或修改我的 find 命令获取文件本身,以便将其输入到 dcmdump utility from the dctmk Toolbox?
【问题讨论】:
-
dcmdump 支持递归搜索目录中的文件。当使用选项 +fo (--read-file-only) 调用时,您还可以确保此工具仅实际处理(即解析)DICOM 文件。