Как найти имя процесса НЕ содержащее в названии заданную строку при помощи bash?
если нам нужны имена процессов с именем НЕ содержащим в названии подстроку
grep -v
ps -ef |grep '^user1' |tr -s ' ' |cut -d ' ' -f 8- |grep -v user1
а так как нам нужна тока первая и последняя колонки то
ps -eo user,cmd |grep '^user1' |tr -s ' ' |cut -d ' ' -f 2- |grep -v user1
хотя тут может возникнуть проблема c tr -s ' ' которая сокращает последовательность пробельных символов до одного пробела, а вдруг кто-то в имени додумается использовать больше одного пробела идущего в подряд или даже табуляцию ? хотя это визуально может и не важно, но всё же

ps -eo user,cmd |grep '^user1' |cut -d ' ' -f 2- |sed 's/^[ \t]*//' |grep -v user1