
MeuGentooO Linux é compilado com oofensivaUSARbandeirahabilitado:
# sudo su -
Password:
Hold it up to the light --- not a brain in sight!
Password:
Também é possível selecionarfortunascom base no grau de ofensiva:
# fortune -o kernelcookies | cowsay -b
_________________________________________
/ /* This is total bullshit: */ \
| |
\ linux-2.6.6/drivers/video/sis/init301.c /
-----------------------------------------
\ ^__^
\ (==)\_______
(__)\ )\/\
||----w |
|| ||
Considerando que a lista de itens com sabor 1 fornecida no link é curta - e eu pessoalmente não uso umpacote de simulação de dinâmica molecular- há mais desse tipo de tempero nocartuchos)no Linux em geral (ou UNIX)?
1- É bom lembrar dissocowsay
pode gerar qualquer argumento, não apenas fortunas, por exemplo, a saída de um comando ou script: cowsay -s $(script_in_path_or_command)
. Nota -s é apenas para a aparência da vaca aqui, veja as páginas de manual.
Responder1
Ok, usando PS1
e command_not_found_handle
, é possível que o bash insulte você:
anthony@Watt:~$ . /tmp/insult.sh
anthony@Watt:~$ sl
bash: sl: command not found, incompetent spoony bard
anthony@Watt:~$ ls /wrong/path
ls: cannot access /wrong/path: No such file or directory
Learn to type, second-rate Horrified Heron.
anthony@Watt:~$
E aqui está /tmp/insult.sh
o que eu procurei acima.
### Data ###
bash_insulter_sentences=(
'Have you considered Windows, %s?\n'
'Learn to type, %s.\n'
'Fell asleep at the keyboard again, %s?\n'
"Failure is common when you're a %s, isn't it?\n"
)
bash_insulter_subjects=(
'spoony bard' # we all played this, right?
'extra-Warty Warthog'
'Dazed Drake'
'Fidgety Fawn'
'Horrified Heron' # etc.
)
bash_insulter_adjectives=(
'incompetent ' # these have built-in spacing
'inept '
'second-rate '
'' # chance of none
''
)
### Functions to generate insults ###
bash_insulter_random_element() {
if [ ${BASH_VERSINFO[0]} -lt 4 ] || \
[ ${BASH_VERSINFO[0]} -eq 4 -a ${BASH_VERSINFO[1]} -lt 3 ]; then
# bash before 4.3 doesn't have -n
eval "local var=(\"\${$1[@]}\")"
else
local -n var="$1"
fi
local len=${#var[@]}
echo -n "${var[$RANDOM % len]}" # Slightly biased. Don't care.
}
bash_insulter_full_subject() {
bash_insulter_random_element bash_insulter_adjectives
bash_insulter_random_element bash_insulter_subjects
}
bash_insulter_do_insult() {
printf "$(bash_insulter_random_element bash_insulter_sentences)" "$(bash_insulter_full_subject)"
}
### set up ###
command_not_found_handle() {
echo "bash: $1: command not found, $(bash_insulter_full_subject)"
return 127
}
PS1='`
if [ 0 -ne $? -a 127 -ne $? ]; then
bash_insulter_do_insult
fi
echo "\u@\h:\w\$ ";
`'
Responder2
Alguém mencionousl
. Em software como um intérprete que visa a máxima previsibilidade,surpresacertamente se qualifica como algo "ofensivo" no contexto. O manual também lista opções apropriadas:
DESCRIPTION
sl is a highly advanced animation program for curing your bad habit of
mistyping.
-a An accident is occurring. People cry for help.
-l Little version
-F It flies like the galaxy express 999.
-c C51 appears instead of D51.
...e um interessanteerro:
BUGS
It sometimes list directory contents.