Автор Тема: ps aux grep  (Прочетена 2718 пъти)

globaluty

  • Напреднали
  • *****
  • Публикации: 96
    • Профил
ps aux grep
« -: Feb 28, 2016, 21:47 »
Здравейте, имам следното в script.sh:

Код:
var="[123].123.123.123 -port 22050"

ps aux | grep '$var' | awk '{print $2}'

ps aux | grep '[123].123.123.123 -port 22050' | awk '{print $2}'


Защо второто grep-ва правилно PID-oвете, които отговарят на [123].123.123.123 -port 22050, а първото не успява да го направи? Къде бъркам и как да го направя с променлива, така както искам?

Благодаря на отзовалите се.
Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Re: ps aux grep
« Отговор #1 -: Feb 28, 2016, 22:03 »
ps aux | grep '$var' | awk '{print $2}'
Защото затварянето на променлива в единични кавички спира действието ѝ на променлива, при което се превръща в прост текст "$var", какъвто нямаш в процесите. Ползвай двойни кавички!
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Bash & cat & grep
Общ форум
martos 2 2371 Последна публикация Jun 22, 2006, 21:35
от martos
малко помощ за един ред на grep
Кошче
ernesto 0 1789 Последна публикация Jan 30, 2007, 14:44
от ernesto
Grep
Настройка на програми
console 2 2104 Последна публикация Sep 18, 2007, 16:53
от VladSun
Помощ за grep
Общ форум
console 2 1840 Последна публикация Feb 13, 2008, 19:26
от Йордан
find/grep - промяна IP
Общ форум
beginner 4 1759 Последна публикация Apr 17, 2013, 17:09
от Naka