我试图从一个参数中提取值,然后将其传递给shell中的另一个命令。
字符串参数可以是零长度,或12的倍数(4个字符代码+ 8个数字日期)。 e.g:
123420110404123520110404123620110404
500520110404
所需的输出是每组12个中的前4个字符,如果没有输入则为空字符串(“”)。 e.g:
123412351236
5005
用法示例:
[user@machine abc]$ echo 123420110404123520110404123620110404 | [magic set of manipulation commands]
123412351236
注意:我有切,sed& Perl已安装。我没有安装awk。
答案 0 :(得分:3)
我能想象的一件事是:
echo 123420110404123520110404123620110404 | sed -r 's/(.{4}).{8}/\1/g'
或
echo 123420110404123520110404123620110404 | sed 's/\(....\)......../\1/g'