껍질이 더“공격적”일 수 있습니까?


10

My Gentoo Linux는 공격적인 USE 플래그를 활성화 하여 컴파일되었습니다 :

# sudo su -
Password: 
Hold it up to the light --- not a brain in sight!
Password: 

공격의 정도에 따라 을 선택할 수도 있습니다 .

# fortune -o kernelcookies | cowsay -b
 _________________________________________ 
/ /* This is total bullshit: */           \
|                                         |
\ linux-2.6.6/drivers/video/sis/init301.c /
 ----------------------------------------- 
        \   ^__^
         \  (==)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

링크에 제공된 향미료 항목 1 의 목록 이 짧고 개인적으로 분자 역학 시뮬레이션 패키지를 사용하지 않는다는 것을 고려할 때 일반적으로 Linux 의 (또는 UNIX)에 더 많은 향신료가 있습니까?


1- cowsay예를 들어 명령이나 스크립트의 출력과 같이 운뿐만 아니라 모든 인수를 출력 할 수 있다는 것을 기억하는 것이 좋습니다 cowsay -s $(script_in_path_or_command). 참고 -s는 여기서 소의 모양을위한 것입니다. 맨 페이지를 참조하십시오.


apt-get moo 및 aptitude moo, aptitude moo -v, aptitude moo -vv 등. 그러나 데비안 기반입니다.
Renan Vicente

1
당신이 달릴 때마다 특별한 모욕이 있어야합니다 sudo su -. 루트 암호를로 변경해야 할 수도 sudo -i있습니다.
derobert

1
BTW, 종료 코드를 기반으로 프롬프트에 색상을 지정하는 데 사용하는 것과 동일한 스턴트를 사용하고 Ubuntu의 명령을 찾지 못했습니다 ... 집에 도착하면 작성하여 게시합니다.
derobert

1
너무 공격적이지는 않지만 그런 종류의 분위기에서 : sl- "ls"대신 "sl"을 입력하면 증기 기관차가 화면을 가로 질러 실행됩니다.
Ouki

1
글쎄, 나는 집에 돌아와서 잠자리에 들었으므로 오늘까지 이것을 쓰지 않았지만 대답으로 게시되었습니다.
derobert

답변:


9

좋아, PS1and 를 사용 command_not_found_handle하면 bash가 당신을 모욕 할 수 있습니다.

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:~$ 

그리고 여기 /tmp/insult.sh내가 위에서 소싱했습니다.

### 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\$ "; 
`'

@ illuminÉ 아마도 bash의 이전 버전이있을 수 있습니다. 기능이 언제 추가되었는지 확실하지 않습니다. -n이 작동합니까?
derobert

4.2.45 (1) 릴리스가 있습니다. 업데이트 할 수 많은 pkg이 발생합니다. 나중에 아치 아래에서 시도하겠습니다! 고마워, 재미있을 것 같아요, 나는 그것을 섞는 아이디어를 좋아합니다! 건배!

@ illuminÉ 4.3.0 여기, 데비안이 젠투보다 새로운 bash를 가질 수 있습니까? 어쨌든 NEWS 파일을 확인하면 4.3의 새로운 기능입니다. 새로운 기능이 필요없는 버전을 추가하는 방법에 대해 살펴 보겠습니다.
derobert

@ illuminÉ이 편집되면 bash 4.2에서 작동하게 될 것입니다.
derobert

고마워요. 정말 폭발적인 일입니다. 잘 작동합니다! 그러나 실제로 데비안. 나는 확인 했고 실제로 4.3은 아직 그것을하지 않았다. 오, btw, 나는 Bard 's 이야기 lol에 더 많았다.

2

누군가가 언급했다 sl. 최대 예측 성을 목표로하는 인터프리터와 같은 소프트웨어에서 놀라움 은 문맥 상 "공세적"인 것으로 확실합니다. 설명서에는 적절한 옵션도 나와 있습니다.

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.

... 그리고 재미있는 버그 :

BUGS
   It sometimes list directory contents.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.