Bash 터미널의 모든 줄에 명령 적용

Bash 터미널의 모든 줄에 명령 적용

오늘 우연히 Lolcat 패키지를 발견했습니다.

여기에 이미지 설명을 입력하세요

제가 가장 먼저 생각하는 것은 stdout에서 나오는 모든 것을 Lolcat을 통해 터미널로 파이프하여 무지개 효과를 얻을 수 있다면 정말 환상적일 것이라는 점입니다. 장난의 가능성을 상상해보세요.

본질적으로 내가 요구하는 것은 bash 프롬프트에서 stdout으로 나오는 모든 줄에 명령을 적용하는 방법입니다.

답변1

다음과 같이 bash를 실행하세요.강타 | 롤캣

답변2

Bash 세션에서 다음을 수행하고 싶습니다.

exec > >(lolcat)

나는 이것을 설치하지 않았지만 비슷한 아이디어를 가지고 있습니다.

$ date
Sun Mar 22 20:01:23 EDT 2015
$ exec > >(rev)
$ date
5102 TDE 23:10:02 22 raM nuS

답변3

저는 세계에서 가장 빠른 웹사이트 생성기용 쉘 확장을 만들었습니다.니프트. 여기에는 lolcat.on(예를 들어 셸을 시작한 후 ) 대부분의 작업에 대해 lolcat 출력을 켤 수 있는 이스터 에그가 있습니다 nift sh. 가능한 완성 옵션을 얻기 위해 탭을 누르면 무지개 출력이 나올 수도 있습니다. 다른 제안 솔루션으로는 그런 결과를 얻을 수 있을지 의문입니다.

쉘 확장은에프++이는 내장된 스크립팅 언어입니다.이것들기능과이것들사용 가능한 유형. 그러나 인식하지 못하는 모든 것은 컴퓨터의 (아마도 기본/기본) 셸을 사용하여 시스템 호출로 실행됩니다(따라서 REPL 셸 모드에서 셸 확장이라고 함).

Nift는 귀하의 컴퓨터에 설치된 lolcat 버전을 찾고 그렇지 않으면 세계에서 가장 빠른 내장 버전을 사용합니다(내 C++ 구현과 거의 동일합니다)롤캣-cc세계에서 가장 빠른 것입니다). Nift 위에 lolcat-cc(또는 다른 버전의 lolcat)를 설치하는 것이 좋습니다. 그렇지 않으면 기본적으로 모든 시스템 호출에 대해 1MB 미만의 lolcat 바이너리 대신 ~5mb Nift 바이너리를 자주 실행하게 되기 때문입니다.

f++ 역시 흥미로운 스크립팅 언어입니다. 가져가다이것예를 들어 100,000개의 빈 텍스트 파일을 생성하고 삭제하는 스크립트입니다. 내 컴퓨터에서는 ~3.5초 안에 실행되는 반면이것본질적으로 동일한 작업을 수행하는 Bash 스크립트는 3분 정도 걸립니다!! f++ 스크립트에서 이미 알아챌 수 있는 멋진 점 중 일부는 문자열 내부에서 변수를 확장할 수 있고, 유형을 사용하여 변수를 정의할 수 있으며, 함수 호출을 통해 변수를 여러 매개변수로 확장할 수 있고, 10,000개가 넘는 입력 매개변수를 가질 수 있다는 것입니다. 함수 호출(수백만 개가 가능해야 합니다!)

Nift REPL에 대한 추가 정보를 찾을 수 있습니다(다양한 플랫폼에 대한 바로가기 포함).여기.

쉘 변수를 정의해야 하는 경우(f++가 아닌 기본 쉘을 통해) sys/system 함수를 사용하여 코드 블록을 수행해야 합니다. Lua(JIT) 및 ExprTk에 대한 코드 블록도 Nift에 포함되어 있으므로 유사하게 수행할 수 있습니다. f++ 변수에 액세스/수정하면서 Lua와 ExprTk를 모두 사용할 수도 있습니다.

따라서 이 쉘(확장)을 얻으려면. 패키지 관리자를 통해 Nift를 설치하거나 GitHub에서 복제하고 만들고 설치하세요. nift shNift f++ 셸 확장을 시작하려면 터미널에 입력한 다음 lolcat.on레인보우 출력을 켜려면 입력하세요.

관련 정보