相关文章推荐
有情有义的蜡烛  ·  加入废文网五百字 - 百度·  6 月前    · 
爱喝酒的草稿纸  ·  中铁一局二公司沈阳地铁三号线十四标项目南塔车 ...·  7 月前    · 
斯文的剪刀  ·  黎贝卡:她们在整形上瘾前都曾美过,想到就心酸 ...·  9 月前    · 
严肃的鸵鸟  ·  搞笑漫画:皮鞋擦得亮,爱情有方向·  1 年前    · 
温柔的围巾  ·  微波雷达感应模块,智能马桶传感方案,智能化生 ...·  1 年前    · 
Code  ›  有没有办法让mv在目录不存在的情况下创建要移动到的目录?开发者社区
overflow 移动社区
https://cloud.tencent.com/developer/ask/sof/29543
年轻有为的熊猫
1 年前
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
提问
问 有没有办法让mv在目录不存在的情况下创建要移动到的目录?
Stack Overflow用户
提问于 2009-02-14 05:16:00
EN

因此,如果我在我的主目录中,我想将foo.c移动到~/bar/baz/foo.c,但这些目录不存在,是否有某种方法可以自动创建这些目录,以便您只需键入

mv foo.c ~/bar/baz/ 

然后一切都会好起来吗?似乎您可以将mv作为一个简单的bash脚本的别名,该脚本将检查这些目录是否存在,如果不存在,将调用mkdir,然后调用mv,但我认为我应该检查一下是否有人有更好的想法。

14 252.3K 0 票数 330
EN
linux
macos
unix
mkdir
mv

回答 14

Stack Overflow用户

回答已采纳

发布于 2009-02-13 22:22:11

下面这一行如何(在bash中):

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

详细分析一下:

mkdir --parents ./some/path
# if it doesn't work; try
mkdir -p ./some/path

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

mv yourfile.txt $_

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

我不确定这在其他shell中会起多大作用,但它可能会给你一些关于寻找什么的想法。

下面是一个使用此技术的示例:

$ > ls
$ > touch yourfile.txt
yourfile.txt
$ > mkdir --parents ./some/path/; mv yourfile.txt $_
$ > ls -F
some/
$ > ls some/path/
yourfile.txt
票数 350
EN

Stack Overflow用户

发布于 2012-06-22 03:19:06

mkdir -p `dirname /destination/moved_file_name.txt`  
mv /full/path/the/file.txt  /destination/moved_file_name.txt
票数 72
EN

Stack Overflow用户

发布于 2012-04-26 11:54:06

另存为名为mv.sh的脚本

#!/bin/bash
# mv.sh
dir="$2" # Include a / at the end to indicate directory (not filename)
tmp="$2"; tmp="${tmp: -1}"
[ "$tmp" != "/" ] && dir="$(dirname "$2")"
[ -a "$dir" ] ||
mkdir -p "$dir" &&
mv "$@"

或者将其放在~/.bashrc文件的末尾,作为替换每个新终端上的默认mv的函数。使用函数可以让bash保留内存,而不必每次都读取脚本文件。

function mvp ()
    dir="$2" # Include a / at the end to indicate directory (not filename)
 
推荐文章
有情有义的蜡烛  ·  加入废文网五百字 - 百度
6 月前
爱喝酒的草稿纸  ·  中铁一局二公司沈阳地铁三号线十四标项目南塔车站围挡顺利完成 - 中国日报网
7 月前
斯文的剪刀  ·  黎贝卡:她们在整形上瘾前都曾美过,想到就心酸|整形|赵雅芝_新浪时尚_新浪网
9 月前
严肃的鸵鸟  ·  搞笑漫画:皮鞋擦得亮,爱情有方向
1 年前
温柔的围巾  ·  微波雷达感应模块,智能马桶传感方案,智能化生活_飞睿科技的博客-CSDN博客
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号