uidgen을 사용하여 일반 고유 식별자(UUID)를 생성하는 방법

uidgen을 사용하여 일반 고유 식별자(UUID)를 생성하는 방법

2022-06-01 last update

10 minutes reading Linux Commands Linux Basics Interactive

소개


공통 고유 식별자(UUID)는 128비트의 숫자로 로컬 시스템과 과거 및 향후 다른 시스템에서 생성된 UUID 간에 고유하게 인식됩니다.그것들의 독특성 때문에 자동적으로 메인 키가 부족할 수 있는 상황에서 그들은 쓸모가 있을 것이다.
고유성 때문에 UUID는 테스트 데이터 생성에 매우 적합합니다.무작위 문자열이 필요합니까?UUID 좋아요.전자 우편은 어떻습니까?[email protected] 좋아요.무작위 문자열 한 무더기가 필요합니까?UUID는 시스템에서 이동할 때 추적이 용이하도록 고유합니다.
명령줄 인터페이스에서 공통 고유 식별자를 생성하려면 uuidgen 유틸리티를 사용합니다.
이 강좌에서는 uuidgen 및 셸 스크립트를 사용하여 UUID 및 예제 데이터를 생성합니다.

UUID 생성

uuidgen 명령은 일반적으로 Linux와 macOS와 같은 유닉스 운영체제에 설치되어 있다.그렇지 않으면 패키지 관리자를 통해 설치할 수 있습니다.Ubuntu 및 Debian 시스템에 패키지uuid-runtime를 설치합니다.
먼저 apt update 명령을 사용하여 시스템의 사용 가능한 패키지 목록을 업데이트합니다.
  1. sudo apt update
다음은 uuid-runtime 패키지 관리자를 사용하여 apt 패키지를 설치합니다.
  1. sudo apt install uuid-runtime
개별 UUID를 생성하려면 매개변수 없이 uuidgen 명령을 실행합니다.실행할 때마다 무작위 UUID가 생성됩니다.
터미널에서 다음 명령을 실행합니다.
  1. uuidgen
UUID에 따라 다음과 같은 출력이 표시됩니다.
Output
a522f494-92ce-44e9-b1a3-f891baed8d60
참고: macOS 버전uuidgen의 기능은 Linux 버전과 약간 다릅니다. 즉, 모든 대문자의 UUID를 되돌려줍니다.
또한 시간과 해시 기반 UUID를 생성할 수 있지만, 일반적으로 대부분의 경우 랜덤 값으로 충분합니다.
한 번에 여러 개의 UUID를 생성하기를 원할 수 있습니다. 이에 대해 살펴보겠습니다.

여러 UUID 생성


한 번에 UUID 그룹을 생성하려면 소량의 셸 스크립트를 사용하여 uuidgen 명령을 여러 번 반복해서 실행합니다.
예를 들어, 10개의 UUID를 생성하려면 다음 명령을 수행합니다.
  1. for i in {1..10}; do uuidgen; done
UUID 10개가 화면에 인쇄됩니다.
Output
834efdb6-6044-4b44-8fcb-560710936f37 e8fa8d54-641a-4d7b-9422-91474d713c62 dff59ac0-4d80-4b96-85c4-14f3a118e7fe 511fea83-9f5f-4606-85ec-3d769da4bf63 3bc82ef7-1138-4f97-945a-08626a42a648 a33abc11-264e-4bbb-82e8-b87226bb4383 2a38839e-3b0d-47f0-9e60-d6b19c0978ad 74dca5e8-c702-4e70-ad16-0a16a64d55fa cd13d088-21cf-4286-ae61-0643d321dd9e 9aec3d5a-a339-4f24-b5a3-8419ac8542f2
for 를 원하는 번호로 바꿀 수 있습니다.
UUID의 고유성을 바탕으로 생성된 데이터의 중복을 걱정할 필요가 없습니다.이제 UUID를 다른 방식으로 사용하는 방법을 살펴보겠습니다.

테스트 데이터에서 UUID 사용


행당 2개의 UUID가 있는 쉼표 구분 값(CSV) 목록을 생성하려면 uuidgen 순환이 반복될 때마다 10 명령을 사용하여 두 개의 UUID를 인쇄할 수 있습니다.
다음 명령을 수행합니다.
  1. for i in {1..10}; do echo `uuidgen`,`uuidgen`; done
다음 출력을 얻을 수 있습니다.
Output
63b1146f-9e7c-4e1f-82eb-3fe378e203df,ed9d6201-e5b2-4410-9ab1-35c8ca037994 8d3981b6-f112-4f21-ac4b-44791e279b2a,eb63310e-d436-44fa-80c6-65721a300a2b 0eddfe24-1c2e-43a1-b2c2-9d3af6bad837,62ef1782-76a2-4b3c-ac69-1c2d02f65789 29f18766-fc9d-46a4-a1d0-e112738edb30,b6bd303d-1148-4f46-bec7-d7e4cb6e4f03 865bcf30-6a8b-49d6-8b27-8dc51620adf7,972b0959-4270-4683-b19b-360b2605f2d0 0d82d54b-566a-45d1-b3a8-5da1a88bceb3,1c67a802-9647-46b1-bde4-3053699b27f9 778b5415-3e1f-4bc5-a349-499459ac4ab7,7e1a2081-c742-4882-9154-e5d2a4af630c e6cc95bd-3ee1-43cb-bea1-51783de5fc57,5088d3a3-ab67-4684-8761-e48bb14596ec a7453bc0-b5e5-41a3-9ed4-cf4d8e0908a2,957ef50f-7889-4335-9f40-17878e3d20fe 3689362d-588a-409e-bd2c-d6fdaa361574,9ffe7c8d-9afb-4b24-a5b7-b29a06f6fac7
같은 방법으로 echo 문장을 작은 조정해서 유사한 전자 우편 주소의 데이터를 생성할 수 있습니다.
  1. for i in {1..10}; do echo `uuidgen`@`uuidgen`.com; done
다음 출력을 받게 됩니다.
Output
[email protected]e06dd208b.com [email protected]5ef85eee0.com [email protected]b4f747b55.com [email protected]960973afb.com [email protected]3f750b54d.com [email protected]0aa42e730.com [email protected]8344a97e0.com [email protected]32ec18bd2.com [email protected]fe5d96cfa.com [email protected]d6803bcfe.com
이것은 인증할 수 있는 실제 전자 우편 주소가 아니지만 출력을 다시 조정하고 두 번째for를 [mailinator.com]https://mailinator.com]와 같은 일회용 전자 우편 주소 영역으로 교체할 수 있습니다. 실제 데이터 목록이 있을 뿐만 아니라 테스트에서 실제로 사용하거나 감시할 수 있는 전자 우편 주소 목록도 있습니다.다음 명령을 시도하십시오.
  1. for i in {1..10}; do echo `uuidgen`@mailinator.com; done
이번에는 다음과 같은 출력을 볼 수 있습니다.
Output
[email protected] [email protected] [email protected] [email protected] [email protected] 8[email protected] [email protected] [email protected] [email protected] [email protected]
마지막으로 이 명령의 출력을 파일에 저장하려면 echo 을 파이프 출력에 첨부합니다.
  1. for i in {1..10}; do echo `uuidgen`@mailinator.com; done > /tmp/emails.txt
그리고 uuidgen 명령을 사용하여 방금 생성한 파일을 봅니다.
  1. cat /tmp/emails.txt
이 파일이 화면에 표시됩니다.
Output
[email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
이 강좌의 다른 예시를 같은 방법으로 파일에 저장할 수 있습니다.

결론


유니버설 유일한 식별자는 무작위 수보다 더 믿을 만하다.그것들의 독특성은 그것들을 매우 강하게 한다.명령줄 인터페이스의 경량급 셸 스크립트와 결합하면 가장 좋아하는 프로그래밍 언어의 패키지 저장소를 불러올 필요가 없습니다.
다음에 UUID가 필요한 경우 온라인 UUID 생성기에 대한 검색을 저장하고 시스템> /path/to/some/file 명령을 사용합니다.시스템 cat 의 특정 구현에 대한 자세한 내용을 보려면 터미널에 uuidgen 을 입력하여 문서를 보십시오.