나는 최근 bash의 Linux 프롬프트에서 9자 비밀번호를 생성하는 다음 방법을 발견했습니다.
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
뭐하는거야 <
?
답변1
궁금하신가요? 이것은 단지덜 일반적인 사용법리디렉터를 입력하십시오. 쉘은 지정된 파일을 입력으로 사용하며 기본 동작은 이를 표준 출력에 표시하는 것입니다.
사용 중인 명령에 대한 분석:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
<
: 입력 리디렉터. 쉘은 파일 내용(/dev/urandom)을 에코합니다.
tr
: 에서 tr --help
:
표준 입력에서 문자를 변환, 압축 및/또는 삭제하고 표준 출력에 씁니다.
-dc 옵션은 --delete --complement와 동일합니다. 이는 다음 문자 세트의 보완 요소, 즉 이 세트에 없는 모든 문자를 삭제한다는 의미입니다. 이는 예제에서 영숫자가 아닌 문자와 밑줄 문자를 제외합니다.
head
: 항목의 처음 몇 줄을 인쇄합니다(기본값은 10줄). -c9 스위치는 줄 대신 인쇄할 바이트 수를 알려줍니다.
그것들을 합치면 "/dev/urandom에 처음 9개의 영숫자 또는 밑줄 바이트를 인쇄하십시오"라는 메시지가 나타납니다. :)
답변2
한번 시도해 보세요 < /usr/include/stdio.h head
. 파일이어야 합니다.
프로그램 출력을 파일로 제공해야 하는 경우 다음을 수행할 수 있습니다.vim <(echo test)