csh
и tcsh
не имеют функций.
Единственный способ — использовать псевдонимы и передавать им аргументы через !
подстановки истории:
alias superwhich 'vim "`which \!:1`"'
superwhich bzgrep
Или лучше (с проверкой ошибок):
alias superwhich 'set q = `which \!:1`; if(-r "$q") vim "$q"'
Давайте рассмотрим это подробно:
{1..10000}
расширяется до разделенного пробелом -списка чисел от 1 до 10 000. Это может быть или не быть большое количество запущенных PID:
$ cat /proc/sys/kernel/pid_max
4194304
Вероятность остановки различных важных процессов, запущенных вскоре после загрузки, например различных служб, по-прежнему высока. Ваш компьютер, скорее всего, будет непригоден для использования, и вам может потребоваться перезагрузка.
PID 1 особенный и его нельзя убить таким образом .
Чтобы запускать команды sudo
в типичной системе, вы должны либо недавно успешно запустить sudo
, либо вам потребуется ввести свой пароль для запуска. Если вы ввели свой пароль, вредоносный скрипт мог легко его прочитать. Сценарий также мог бы сделать больше, чем вы показали, способами, которые было бы трудно обнаружить, чтобы предоставить постоянный доступ к вашей машине либо из Интернета, либо с использованием какой-либо новой учетной записи. По сути, после запуска вредоносного скрипта, который делает что-либо с sudo
, вы можете считать, что ваш компьютер скомпрометирован. Если вы полностью уверены, что команда, которую вы запустили, была единственной и именно той, которую вы опубликовали, у вас все должно быть в порядке,но есть способы отравить буфер обмена веб-страницами , копируя больше кода, чем видно.