如果不存在,有没有办法使mv创建要移动到的目录?

因此,如果我位于主目录中,并且想将foo.c移至〜/ bar / baz /

foo.c,但是这些目录不存在,则可以通过某种方式自动创建这些目录,以便您只需要输入

mv foo.c ~/bar/baz/

一切都会解决?看来您可以将mv别名为一个简单的bash脚本,该脚本将检查那些目录是否存在,如果不存在,将调用mkdir然后是mv,但是我想我会检查是否有人有更好的主意。

回答:

这个单线(bash)怎么样:

mkdir --parents ./some/path/; mv yourfile.txt $_

分解:

mkdir --parents ./some/path

创建目录(包括所有中间目录),然后:

mv yourfile.txt $_

将文件移动到该目录($ _扩展到传递给上一个shell命令的最后一个参数,即:新创建的目录)。

我不确定这在其他shell中能发挥多大的作用,但可能会为您提供一些有关查找内容的想法。

这是使用此技术的示例:

$ > ls

$ > touch yourfile.txt

$ > ls

yourfile.txt

$ > mkdir --parents ./some/path/; mv yourfile.txt $_

$ > ls -F

some/

$ > ls some/path/

yourfile.txt

以上是 如果不存在,有没有办法使mv创建要移动到的目录? 的全部内容, 来源链接: utcz.com/qa/430516.html

回到顶部