Що означає |символ у sudo ps -ef | grep processnameкоманді?
Чи може хто-небудь пояснити цю команду? Я використовував цю команду лише для отримання PID та вбивства цього процесу, але я також бачив, sudo ps -ef | grep processname | grep -v grepі я перебуваю під враженням, яке -v grepсхоже на вбивство попереднього створеного PID для grep. Якщо це так, як це працює?
ps -ef | grep '[p]rocessname'
grep [p]rocessname, ви повідомляєте оболонці шукати файл у поточному каталозі з іменем processnameта замінювати шаблон на ім'я цього файлу. Якщо жодного файлу з іменем не processnameіснує, оболонка може передавати шаблон буквально в режим грепінгу. Але це залежить від ваших налаштувань. Так що ваша версія зламається , якщо файл з ім'ям processnameіснує , або якщо будь-який з наступних варіантів оболонки включений failglob, nullglob, nocaseglob.

sudoбігатиps -ef. Також загальним трюком уникнути третьої команди є додавання символу імені процесу у квадратні дужки:ps -ef | grep [p]rocessname