Удалите символы в шаблоне слов

[114718]Нужно позаботиться о двух вещах:[12111]Перенаправление стандартных потоков входа/выхода в/из ниоткуда.[12112]Вставка процесса в фон [115582]reparented by init[115583]. [12113]Бит "reparented by init"[115164]1[115165] является наиболее важной частью, так как в противном случае при выходе из системы процесс получит [115166]HUP[115167]. Команда [115168]nohup[115169] может заблокировать HUP, и теперь процесс orphan будет принят init'ом, но лучшим решением будет просто использовать [115170]setid[115171], который сразу же запускает процесс в новой [115172]группе процессов [115173], с init'ом в качестве родителя: [12114]< /dev/zero [115175] перенаправляет stdin; это может иметь или не иметь значения в зависимости от природы [115176]myprog[115177]. [115178]2>&1&> /dev/null[115179] перенаправляет вывод, чтобы не получить мусор на терминале до выхода из системы.[12115]1. Init - это первый процесс, запущенный в системе (ядром) и единственный, который не может умереть. PID init всегда 1. Обратите внимание, что в некоторых системах используется init-демон с другим исполняемым именем, его можно идентифицировать с помощью [115484]ps -p 1[115485].[12116]
1
04.06.2014, 22:14
3 ответа

Вы можете сделать это разными способами.

С perl :

$ echo "p.G345L and p.X31Z" | perl -pe 's/p\.//g'
G345L and X31Z

С sed :

$ echo "p.G345L and p.X31Z" | sed 's/p\.//g'
G345L and X31Z
1
27.01.2020, 23:15

Не знаю, что у вас есть, но вы можете легко передать это через sed. В реализации GNU sed в сопоставлении с образцом '\ b' будет обозначать границу слова, которую вы можете использовать, чтобы убедиться, что вы не берете часть предложения, например «стоп. "

$ cat file
p.G345L sentence stop.  p.X31Z part of another sentence
$ sed 's/\bp\.//g' file 
G345L sentence stop.  X31Z part of another sentence
3
27.01.2020, 23:15

Если шаблон стр. , за которым следует заглавная буква, за которой следует последовательность из одной или нескольких десятичных цифр, за которыми следует одна заглавная буква, тогда это будет (POSIXly):

sed 's/p\.\([[:upper:]][[:digit:]]\{1,\}[[:upper:]]\)/\1/g'
2
27.01.2020, 23:15

Теги

Похожие вопросы