2014-02-16 112 views
0

我没有问题,找我要与子目录:从哪里我会工作目录查找特定的目录,并把它作为工作目录

find /media/USBdrive/ -type d -mtime 1 

从那里,我需要得到这个子目录(快照)运行命令mencodex...来创建我的视频。

我试图-exec cd {} /;....和很多其他的东西,但无济于事 我在这里失去了

感谢你的帮助

我的目的更是创建一个脚本,但首先我需要检查命令或者更正确地

cd $(find /media/USBdrive/ -type d -mtime 1) 

,如格伦用双引号表明:

回答

0

试试这个处理目标目录名称中的空格。

顺便说一句......当你运行“find ... -exec xyz”时,它会创建一个子shell并在该子shell中运行你的命令(即xyz)直到它退出,然后它运行另一个子shell它找到与您的搜索相匹配的文件。所以当你运行“find ... -exec cd somewhere”。它实际上是cd到那个目录,但它然后退出。如果你真的想,你可以把你在新的脚本所需的命令,叫称“DoEverything”,并像这样运行:

find ... -exec DoEverything {} \; 

但会涉及到另一个脚本的方式,以及格伦和我建议更清洁。

+0

谢谢你 - 它的作品! – user3315730

+0

我会敦促你做错误检查,以确保你确切地落在你预期的地方。有一天,“find”可能不会返回任何内容,并且最终会执行“cd”并登录到登录目录中,例如... –

0

您的当前 shell执行cd命令:在子shell或脚本改变目录不会影响当前的shell:

cd "$(find /media/USBdrive/ -type d -mtime 1)"