我想修改脚本中文件名的结尾部分,如下所示
#!/bin/bash
file = ...
gawk -f shc2csv.awk $1 > $file.csv
其中$1
通常类似于shc_20210901_0002_763803214.html
和file
应该是shc_20210901
。
所以应该从第二个开始切断字符串_
。
我该如何file
使用$1
sed 或 awk 获取?
答案1
您不需要 sed 或 awk 来修改变量中的值$1
。
#!/bin/bash
file=${1%_*} # remove the part after the last `_`
file=${file%_*} # repeat the removal to the second `_`
gawk -f shc2csv.awk "$1" > "$file".csv
您应该引用变量扩展。