У меня есть такой текстовый файл
ID
MQ2427D17-01_1_12
MQ2427D17-01_1_1
MQ2427D17-01_1_2
MQ2427D17-01_1_3
MQ2427D17-01_1_4
MQ2427D17-02_2_5
MQ2427D17-02_2_25
MQ2427D17-02_2_1
MQ2427D17-02_2_2
MQ2427D17-02_2_3
MQ2427D17-02_2_4
MQ2427D17-01_1_28
MQ3427D17-01_1_29
MQ3427D17-01_1_1
MQ3427D17-01_1_2
MQ3427D17-01_3_3
MQ3427D17-01_3_30
MQ3427D17-01_3_33
Я хочу изменить цифры в конце, когда они от 1 до 13, от 2 до 14, от 3 до 15, всякий раз, когдаэто от 4 до 16, когда от 5 до 17, от 6 до 18, от 7 до 19 ... когда от 12 до 24.
, поэтому результат выглядит следующим образом
ID
MQ2427D17-01_1_24
MQ2427D17-01_1_13
MQ2427D17-01_1_14
MQ2427D17-01_1_15
MQ2427D17-01_1_16
MQ2427D17-02_2_17
MQ2427D17-02_2_25
MQ2427D17-02_2_13
MQ2427D17-02_2_14
MQ2427D17-02_2_15
MQ2427D17-02_2_16
MQ2427D17-01_1_28
MQ3427D17-01_1_29
MQ3427D17-01_1_13
MQ3427D17-01_1_14
MQ3427D17-01_3_15
MQ3427D17-01_3_30
MQ3427D17-01_3_33
Я пытался сделать это с этим
sed 's/1/13/g' myfile.txt > modified.txt
sed = Stream EDitor
The command string:
s = the substitute command
original = a regular expression describing the number to replace
g = global (i.e. replace all and not just the first occurrence)
myfile.txt = mydata
modified.txt = the output
, но это изменит число, где бы они ни были
Я не знаю, почему решение нижене работает, например, на этом примере данные
ID
MQ3HHD2D17-01_1_1
MQ3HHD2D17-01_1_2
MQ3HHD2D17-01_1_3
MQ3HHD2D17-01_1_4
MQ3HHD2D17-01_1_5
MQ3HHD2D17-01_1_6
MQ3HHD2D17-01_1_7
MQ3HHD2D17-01_1_8
MQ3HHD2D17-01_1_9
MQ3HHD2D17-01_1_10
MQ3HHD2D17-01_1_11
MQ3HHD2D17-01_1_12
MQ4HHD2D17-01_2_1
MQ4HHD2D17-01_2_2
MQ4HHD2D17-01_2_3
MQ4HHD2D17-01_2_4
MQ4HHD2D17-01_2_5
MQ4HHD2D17-01_2_6
MQ4HHD2D17-01_2_7
MQ4HHD2D17-01_2_8
MQ4HHD2D17-01_2_9
MQ4HHD2D17-01_2_10
MQ4HHD2D17-01_2_11
MQ4HHD2D17-01_2_12
Это должно быть
ID
MQ3HHD2D17-01_1_13
MQ3HHD2D17-01_1_14
MQ3HHD2D17-01_1_15
MQ3HHD2D17-01_1_16
MQ3HHD2D17-01_1_17
MQ3HHD2D17-01_1_18
MQ3HHD2D17-01_1_19
MQ3HHD2D17-01_1_20
MQ3HHD2D17-01_1_21
MQ3HHD2D17-01_1_22
MQ3HHD2D17-01_1_23
MQ3HHD2D17-01_1_24
MQ4HHD2D17-01_2_13
MQ4HHD2D17-01_2_14
MQ4HHD2D17-01_2_15
MQ4HHD2D17-01_2_16
MQ4HHD2D17-01_2_17
MQ4HHD2D17-01_2_18
MQ4HHD2D17-01_2_19
MQ4HHD2D17-01_2_20
MQ4HHD2D17-01_2_21
MQ4HHD2D17-01_2_22
MQ4HHD2D17-01_2_23
MQ4HHD2D17-01_2_24