Било који знак или низ могу се заменити помоћу команде `сед`. Понекад морамо заменити знак новог реда ( н) у датотеци зарезом. У овом чланку користимо `сед` команду да заменимо н зарезом.
Коришћење `сед` за замену н зарезом
Многи проблеми могу настати приликом замене н зарезом. Подразумевано, сваки ред се завршава са н при креирању датотеке. Команда `сед` може лако да се подели на н и замени нови ред било којим знаком. Други граничник се може користити уместо н, али само када се користи ГНУ сед. Када н недостаје у последњем реду датотеке, ГНУ сед може да избегне штампање н. Надаље, н се обично додаје сваком узастопном испису `сед`.
Направите датотеку
У овом чланку ћемо вам показати како помоћу команде `сед` заменити н зарезом. Да бисте пратили овај водич, креирајте текстуалну датотеку под називом Цлиентс.ткт са следећим табеларним подацима о клијенту.
ИД | Име | Емаил | Телефон |
---|---|---|---|
ц01 | Доктор медицине. Ракиб | [заштићена е -пошта] | 01856233238 |
ц02 | Мехер Афрозе | [заштићена е -пошта] | 01733536342 |
ц03 | Факрул Ахсан | [заштићена е -пошта] | 01934737248 |
ц04 | Хелал Уддин | [заштићена е -пошта] | 01534895898 |
ц05 | Нусрат Јахан | [заштићена е -пошта] | 01866345254 |
Пример 1: Замените н зарезом помоћу -з
Опција -з се користи за претварање н у нулти знак ( 0). Садржај датотеке третира се као један ред ако не садржи нулл знакове. Команда `сед` ће нови ред претворити у нулл знак и заменити сваки н зарезом помоћу првог обрасца за претрагу и замену. Овде се „г“ користи за глобално тражење н. Са другим обрасцем за претрагу и замену, последњи зарез ће бити замењен са н.
$мачкаЦлиентс.ткт
$сед -Са 'с/ н/,/г; с/, $/ н/'Цлиентс.ткт
Следећи излаз ће бити произведен након покретања наредби.
Пример 2: Замените н зарезом користећи а, б, $! и Н.
Команда `сед` се може користити за замену н зарезом коришћењем а, б, Н и $! . Овде, до користи се за додавање задатака, б користи се за гранање садржаја, Н се користи за прелазак на следећи ред и $! се користи за спречавање примене задатка замене на последњи ред. Команда ће заменити сваку н са зарезом осим последњег реда.
$мачкаЦлиентс.ткт
$сед ': а; Н; $! ба; с/ н/,/г'Цлиентс.ткт
Следећи излаз ће бити произведен након покретања наредби.
Пример 3: Замените н зарезом користећи Х, х, д, к и и
Ако желите да замените н) са зарезом у малој датотеци, тада се може користити следећа команда `сед`. Овде, Х. користи се за додавање последњег реда у текст за задржавање, 1х се користи за копирање сваког реда датотеке у текст за задржавање из првог реда, $! д користи се за брисање свих редова осим последњег, Икс користи се за размену задржаног текста и простора за узорке, и и користи се за замену сваког н у држању текста са зарезом.
$мачкаЦлиентс.ткт$сед 'Х; 1х; $! Д; к; и/ н/,/'Цлиентс.ткт
Следећи излаз ће бити произведен након покретања наредби.
Пример 4: Замените н зарезом користећи -н, Х, х, г и п
Команда `сед` се може користити за замену н са зарезом са -н опцију, која спречава аутоматско штампање. Као и у претходном примеру, Х. овде се користи за додавање последњег реда у текст за задржавање, 1х користи се за копирање сваког реда датотеке у текст који држи, $ односи се на последњи ред датотеке, г користи се за копирање из задржаног текста и п служи за штампање.
$мачкаЦлиентс.ткт$сед-н'Х; 1х; ${г; с / н/,/г; п} 'Цлиентс.ткт
Следећи излаз ће бити произведен након извршавања горњих команди.
Пример 5: Замените н зарезом користећи Х, к, п
Х, к и п су објашњени у претходним примерима. Први израз за претрагу и замену ће заменити сваки н са зарезом, а други израз за претрагу и замену ће заменити зарез на почетку ретка размаком.
$мачкаЦлиентс.ткт$сед-н'Х; $ {к; с/ н/,/г; с/^, //; п;}'Цлиентс.ткт
Следећи излаз ће бити произведен након извршавања горњих команди.
Пример 6: Замените н зарезом користећи Н и `цат`
Команда `цат` се овде користи за слање садржаја датотеке команди` сед` и Н се користи за прелазак на следећи ред.
$мачкаЦлиентс.ткт$мачкаЦлиентс.ткт| сед 'Н; с/ н/,/'
Следећи излаз ће бити произведен након извршавања горњих команди.
Закључак
Можда ће бити потребно заменити н зарезом за пренос података из једног формата датотеке у други. Ова врста замене се такође може извршити коришћењем других Линук команди. Многе опције команде, као што су Х, Н, х и к, могу се користити са командом `сед` за довршавање овог задатка. Овај водич говори о неколико начина коришћења команде `сед` за замену н зарезом.