Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
unixkornshell上的选择性tar_Unix_Ksh - Fatal编程技术网

unixkornshell上的选择性tar

unixkornshell上的选择性tar,unix,ksh,Unix,Ksh,我需要帮助为Unix编写具有以下功能的Korn Shell脚本 首先,请假设您有一个包含以下内容的Unix目录: 1) ALPHA_PIPPO_PLUTO_0001.xml 2) ALPHA_PIPPO_TOPOLINO_0001.xml 3) BETA_MINNIE_OMEGA_0002.xml 4) BETA_OMICRON_PHI_0002.xml 5) DELTA_WHY_NOT_0001.xml 6) DELTA_BECAUSE_WHY_0002.xml 请注意: a) 文件1和文件

我需要帮助为Unix编写具有以下功能的Korn Shell脚本

首先,请假设您有一个包含以下内容的Unix目录:

1) ALPHA_PIPPO_PLUTO_0001.xml
2) ALPHA_PIPPO_TOPOLINO_0001.xml
3) BETA_MINNIE_OMEGA_0002.xml
4) BETA_OMICRON_PHI_0002.xml
5) DELTA_WHY_NOT_0001.xml
6) DELTA_BECAUSE_WHY_0002.xml
请注意:

a) 文件1和文件2以ALPHA开头,以0001结尾:我必须创建一个名为ALPHA_0001.tar的tar文件,其中包含这两个文件

b) 文件3和文件4以BETA开头,以0002结尾:我必须创建一个名为BETA_0002.tar的tar文件,其中包含这两个文件

c) 文件5以DELTA开始,以0001结束:我必须创建一个名为DELTA_0001.tar的tar文件,它只包含这个文件

d) 文件6以DELTA开头,以0002结尾:我必须创建一个名为DELTA_0002.tar的tar文件,它只包含这个文件

如何在Unix Korn Shell中实现这一点


非常感谢您考虑我的请求。

您可以使用以下命令将其存档:

find . -regex "^.*?_.*_.*?\.xml$" | sed -r "s|(^./[A-Z]*_).*_(.*?\.)xml$|tar -cvf \1\2tar|g" | sed -r "s|^.*\./([A-Z]*)_([0-9]*).tar|& \1*\2*|g" |  uniq | source /dev/stdin

ksh:源:未找到。查找:0652-017-正则表达式不是有效选项。sed:未识别标志:r用法:sed[-n][u]脚本[文件…]sed[-n][u][e脚本]。。。[-f脚本文件]。。。[File…]sed:未识别标志:r用法:sed[-n][u]脚本[File…]sed[-n][u][e脚本]。。。[-f脚本文件]。。。[文件…]能否粘贴
find--version
sed--version
的输出?用法:find[-H |-L]路径列表[表达式列表]sed--version sed:未识别标志:-用法:sed[-n][-u]脚本[文件…]sed[-n][-u][-e脚本]。。。[-f脚本文件]。。。[文件…]$