【发布时间】:2026-02-15 15:50:01
【问题描述】:
我正在编写一个 sh 文件,其中 var 为:
c=aabbcc.DP.09-25-2012_14_17.dmp
我只想复制另一个变量中的初始部分,例如:
d = aabbcc
我应该如何修剪我的变量?
【问题讨论】:
我正在编写一个 sh 文件,其中 var 为:
c=aabbcc.DP.09-25-2012_14_17.dmp
我只想复制另一个变量中的初始部分,例如:
d = aabbcc
我应该如何修剪我的变量?
【问题讨论】:
如果sh 是指bash,那么
d="${c%%.*}"
否则
d="`echo "$d"|cut -d. -f1`"
也许会。
【讨论】:
perl:
D=`echo $c | perl -lne 's/([^\.]*)\..*/\1/;print'`
sed:
D=`echo $c | sed 's/\([^\.]*\)\..*/\1/'`
awk:
D=`echo $c | awk -F. '{print $1}'`
【讨论】:
expr 命令兼容任何 sh 实现,不需要管道
d=`expr $c : '\([^\.]*\)'`
【讨论】: