我试着寻找答案,但在问题中丢失了。基本上我有一个shell脚本如下:
#!/bin/ksh
if [ $# -eq 1 ]; then
exit -1
fi
processInfo $1
此时,processInfo返回一个格式字符串: 参数1:参数2:参数3:param4:param5
我想将param4捕获到变量中。
例如:
param4 = processInfo $1 | sed regex
sed和regex似乎很简单,但我只是忘记了它。请帮忙
答案 0 :(得分:2)
param4=$(processInfo $1 | awk -F: '{print $4}')
答案 1 :(得分:2)
param4=$( processInfo "$1" | cut -d':' -f 4 )
答案 2 :(得分:0)
saveIFS=$IFS
IFS=:
array=($(processInfo $1))
IFS=$saveIFS
echo ${array[3]}
答案 3 :(得分:0)
如果您不需要保留脚本的位置参数:
IFS=:
set -- $( processInfo "$1" )
param4="$4"