用两个bash变量制作目录,如下所示,这是怎么回事?

时间:2019-03-19 06:36:57

标签: bash

无法使用以下bash脚本建立目录:

##! /bin/bash
PROJ=~/myname
for i in  aa bb cc
do
TMPDIR=${PROJ}/${i}
test ! -e ${TMPDIR} &&  mkdir ${TMPDIR}
OUTDIR=${PROJ}/${i}/subfolder
test ! -e ${OUTDIR} &&  mkdir ${OUTDIR}

/bin/cp -f ./file.out ${OUTDIR}/
done 

原来OUTDIR剂量不存在! 怎么了,怎么用两个bash变量创建目录?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您没有收到任何错误消息,表明无法创建目录?毕竟,如果目录$HOME/home不存在,您的脚本将失败。

您可以将创建过程简化为

PROJ="$HOME/home"
for i in  aa bb cc
do
  OUTDIR="$PROJ/$i/subfolder"
  mkdir -p "$OUTDIR" && cp -f ./file.out "$OUTDIR" && echo "File copied to $OUTDIR"
done