我需要编写一个Shell脚本,从环境变量中读取一个变量。如果该变量指向的文件不存在,我想要创建它。这个文件路径可能包含一些不存在的中间目录,因此这些目录也需要被创建。所以既不能使用mkdir -p,也不能使用简单的touch命令。有什么解决方法?谢谢!
mkdir -p "`dirname $foo`"
touch "$foo"
dirname
可以处理任意路径;它不会检查路径是否在使用中(文件是否存在)。
mkdir -p /directories/.... && touch /directories/file
&
运算符不会实现你想要的功能。你可能想用的是 &&
。 - wormsparty