我有这个简单的创建目录命令
#!/bin/bash
mkdir -p /home/test/$1
我正在像这样运行这个脚本
bash create.sh 2020/06/20/01
我想得到这个传递的参数并操纵以下内容
2020-06-20/01
我该怎么做
答案1
你可以这样做:
date=${1%/*} # 2020/06/20
dirname=${date//\//-}/${1##*/} # 2020-06-20/01
mkdir -p "/home/test/$dirname"
也许
IFS=/ read -ra date_bits <<<"$1" # date_bits=([0]="2020" [1]="06" [2]="20" [3]="01")
printf -v dirname "%s-%s-%s/%s" "${date_bits[@]}"
mkdir -p "/home/test/$dirname"