Я пытаюсь удалить нули в начале строки до четвертых символов. Если ноль выходит за пределы 4-й позиции, тогда не нужно его удалять. Я не могу это сделать правильно.удалять первые N символов условно, используя sed или awk или что-либо.
Состояние:
<------Delete 1 zero at start.
0<-----Delete 2 zeros at start.
00<----Delete 3 zeros at start.
000<----Delete 4 zero at start.
0000<---Delete 4 zero at start and leave 1, output
1234560<-----Delete nothing.
Пример:
входного файла:
cat file
0000abc0
00abcde0
0abcede0
00000abcede0
Ожидаемый результат:
abc0
abcde0
abcede0
0abcede0
Что уже пробовал: (что, конечно, сделал не помогло)
cat file |sed 's/^[0]//g' <----This just delete one zero at the start
000abc0
0abcde0
abcede0
0000abcede0
cat file | sed 's/^[0][0][0][0]//g'<---THis only works for line having 4 zeros.
abc0
00abcde0
0abcede0
0abcede0
cat file | sed 's/^[0]*//g' <-----Removes all the zeros at start.
abc0
abcde0
abcede0
abcede0
cat file | sed 's/0//g'{4} <------I am lost what it do!!
000abc
00abcde0
0abcede0
000abcede
работал, я должен использовать -r –
@krzyk, он работал. Спасибо. Примите это через несколько минут. –
Нет необходимости в g ... –