Например, мой файл имеет следующие данные:Как усечь первую цифру числа?
$ cat sample.txt
19999119999,string1,dddddd
18888135790,string2,dddddd
15555555500,string3,dddddd
Это образец данных. Как мы можем удалить ТОЛЬКО первую цифру из каждой строки? Мой выход должен быть:
$ cat output.txt
9999119999,string1,dddddd
8888135790,string2,dddddd
5555555500,string3,dddddd
Есть ли способ разбора каждого символа линии с использованием grep или sed? Или любой другой способ получить желаемый результат?
Вот простой СЕПГ строка: СЭД «s/^ [ 0-9] // ' – user3486184
Итак, это вопрос удаления первого символа в строке, не так ли? – fedorqui
Что произойдет, если число в первом поле является одноразрядным числом? Должна ли эта цифра быть удалена, не оставляя номера? Если нет (так что вы хотите только усечь первую цифру многозначного числа), то вам нужно быть немного сложнее, чем 'sed 's/^ [0-9] //'' - вам нужно 'sed 's/^ [0-9] \ ([0-9] \)/\ 1 /' '(найдите две цифры в начале строки и замените только вторую). Если вы уверены, что в первом поле никогда не будет однозначного числа, вы можете использовать оригинальный простой скрипт - использование регулярных выражений часто является балансирующим действием между надежностью и простотой. –