我知道你可以用mkdir来创建一个目录,用touch来创建一个文件,但是没有办法一次完成这两个操作吗?

i、 e.如果我想在文件夹other不存在时执行以下操作:

cp /my/long/path/here/thing.txt /my/other/path/here/cpedthing.txt

错误:

cp: cannot create regular file `/my/other/path/here/cpedthing.txt': No such file or directory

有人想出一个函数来解决这个问题吗?

推荐答案

使用&&在一个shell行中组合两个命令:

COMMAND1 && COMMAND2
mkdir -p /my/other/path/here/ && touch /my/other/path/here/cpedthing.txt

注意:之前我建议使用;来分隔这两个命令,但正如@trysis所指出的,在大多数情况下使用&&可能更好,因为在COMMAND1失败的情况下,COMMAND2也不会被执行.(否则,这可能会导致您意想不到的问题.)

Linux相关问答推荐

在Bluez/Linux中,周期性与连续蓝牙设备发现的已知缺陷是什么?

如何限制SLURM中并行执行的程序数量

Linux 中大型 TSV 的条件编辑

如何查明第三方是否杀死或 destruct 了 C++ 中的程序

如何使用 sed 和 awk 命令提取模式?

如何在不进行轮询且不吃掉其他人子进程的退出代码的情况下等待一组子进程(并且只有它们)?

如何从核心转储中获取线程名称?

awk/sed 命令仅在模式 2 匹配时打印模式 1

如何在守护进程中使用 popen() 和 pclose() 获取通过管道执行的 shell 命令的正确退出代码?

如何从linux调度程序中屏蔽一个cpu(防止它调度线程到那个cpu上)?

PHP factor 30 从 Linux 到 Windows 的性能差异

anon 对 pmap 意味着什么?

如何比较两个压缩包的内容

如何在不包括可用空间的情况下创建光盘(sd 卡)的 .IMG 映像?

如何在没有 IDE 的情况下构建和部署三星 SmartTV 应用程序(例如:在 Linux 上)

使用inotify的正确方法是什么?

如何在 shell 脚本中向文件中添加一行?

如何停止 Linux 上的不间断进程?

内联 if shell 脚本

在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403