Я пытаюсь использовать команду csplit для разделения файла на 3 строковых разделителя, но у меня возникают проблемы.Я не получил cplist для работы со списком разделителей.Это то, что я пробую:
У меня есть этот файл:
TRANSHEADER002_XA
XAL1
XAL2
XAL3
TRANSHEADER001_EXEC
EXECL1
EXECL2
EXECL3
TRANSHEADER003_YB
YBL1
YBL2
YBL3
TRANSHEADER002_XA
XAL1A
XAL2A
XAL3A
Это разделители строк
TRANSHEADER002_XA
TRANSHEADER001_EXEC
TRANSHEADER003_YB
, но я не получаю успехкогда я пытаюсь использовать команду csplit с более чем 1 разделителем следующим образом
csplit -k -s -f "$file"_split. "$file" "/^\(TRANSHEADER002_XA\|TRANSHEADER001_EXEC\|TRANSHEADER003_YB\)/" "{999}"
csplit -k -s -f "$file"_split. "$file" "/^(TRANSHEADER002_XA|TRANSHEADER001_EXEC|TRANSHEADER003_YB)/" "{999}"
csplit -k -s -f "$file"_split. "$file" "/^TRANSHEADER002_XA|^TRANSHEADER001_EXEC|^TRANSHEADER003_YB/" "{999}"
Я получил ошибку «вне диапазона», как показано ниже, для любой из команд выше
/^\(TRANSHEADER002_XA\|TRANSHEADER001_EXEC\|TRANSHEADER003_YB\)/ - out of range
Iхотите разделить этот файл, как показано ниже
--> file_split.01
TRANSHEADER002_XA
XAL1
XAL2
XAL3
--> file_split.02
TRANSHEADER001_EXEC
EXECL1
EXECL2
EXECL3
--> file_split.03
TRANSHEADER003_YB
YBL1
YBL2
YBL3
--> file_split.04
TRANSHEADER002_XA
XAL1A
XAL2A
XAL3A
Ребята, вы знаете, как я могу это сделать, используя csplit или другую команду, которая выдала бы мне файлы разделения, как я показал выше?* Большое спасибо!