Я признаю, что это домашнее задание, но я потерял объяснение следующей командной строки:
ПРЕДУПРЕЖДЕНИЕ: Это так называемая FORK BOMB! Эта командная строка может и будет разбивать ваш компьютер, потребляя всю RAM и CPU (поверьте мне, я попробовал это ...)
:(){ :|:& };:
Поскольку я знаю, что я должен делать это один, это то, что у меня есть до сих пор (поиск этих символов очень обескуражен).
Труба позволяет объединить некоторые команды вместе, чтобы первый вывод использовался вторым в качестве входа. & Amp; это запустить команду в фоновом режиме (в основном используется для запуска чего-то из оболочки, которая не должна блокироваться командой)Я предполагаю, что: есть fork? Но здесь я полностью потерян! Я готов учиться, поэтому, возможно, у кого-то есть хороший ресурс, где я могу это прочитать?
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' -- whenever we say ':', do this:
{ # beginning of what to do when we say ':'
: # load another copy of the ':' function into memory...
| # ...and pipe its output to...
: # ...another copy of ':' function, which has to be loaded into memory
# (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
& # disown the functions -- if the first ':' is killed,
# all of the functions that it has started should NOT be auto-killed
} # end of what to do when we say ':'
; # Having defined ':', we should now...
: # ...call ':', initiating a chain-reaction: each ':' will start two more.
Источник: Forkbombs в Википедии
:() # define ':' - всякий раз, когда мы говорим ':', делаем следующее: {# начало того, что делать, когда мы говорим ':': # загружать другую копию функции ':' в память ... | # ... и вывести его вывод в ...: # ... другую копию функции::, которая должна быть загружена в память # (следовательно, ': |:' просто получает две копии загружаемого файла:: когда ':' вызывается) & amp; # отключить функции - если первый «:» убит, # все запущенные функции НЕ должны быть автоматически убиты} # конец того, что делать, когда мы говорим «:»; # Определив ':', мы должны теперь ...: # ... вызвать ':', инициируя цепную реакцию: каждый ':' начнет еще два.
Источник: Forkbombs в Википедии
:() # define ':' - всякий раз, когда мы говорим ':', делаем следующее: {# начало того, что делать, когда мы говорим ':': # загружать другую копию функции ':' в память ... | # ... и вывести его вывод в ...: # ... другую копию функции::, которая должна быть загружена в память # (следовательно, ': |:' просто получает две копии загружаемого файла:: когда ':' вызывается) & amp; # отключить функции - если первый «:» убит, # все запущенные функции НЕ должны быть автоматически убиты} # конец того, что делать, когда мы говорим «:»; # Определив ':', мы должны теперь ...: # ... вызвать ':', инициируя цепную реакцию: каждый ':' начнет еще два.
Источник: Forkbombs в Википедии