Попробуйте вместо этого:
sed -i "s|$LINEout|$LINEnew|" job.sh
Если под macOS вам нужно указать резервную копию, поэтому вам придется использовать это:
sed -i "" "s|$LINEout|$LINEnew|" job.sh
Примеры:
echo "foo
bar" > sample
cat sample
foo
bar
rep=bar
sed -i.bak "s|$rep|baz|" sample
cat sample
foo
baz
cat sample.bak
foo
bar
Протестировано с macOS X 10.11.6 и BSD sed
Причина, по которой он говорит Записи таблицы разделов не в порядке на диске.
потому что это не так. Ваш sda4
находится в конце диска, а sda5-9
расположен перед ним.
В parted
вывод должен выглядеть примерно так:
# parted /dev/loop0 unit s print free
Model: Loopback device (loopback)
Disk /dev/loop0: 156301488s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
63s 2047s 1985s Free Space
1 2048s 8390655s 8388608s primary lba
2 8390656s 29296639s 20905984s primary boot
3 29296640s 136712191s 107415552s extended lba
5 29298688s 33492991s 4194304s logical
6 33495040s 75438079s 41943040s logical
7 75440128s 83828735s 8388608s logical
8 83830784s 88025087s 4194304s logical
9 88027136s 94318591s 6291456s logical
94318592s 136712191s 42393600s Free Space
4 136712192s 156301487s 19589296s primary
Обратите внимание, что это просто объяснение сообщения fdisk
. Если вы преобразуете последний основной раздел в логический, сообщение исчезнет. Я не уверен, связано ли это каким-либо образом с другими вашими проблемами с разделами.