컴퓨터의 아키텍처를 기반으로 작업을 결정하는 스크립트를 작성하려고합니다. 이미 사용 uname -m
하지만 내가 얼마나 많은 ARM 아키텍처 모르는, 아키텍처 라인을 수집 할 수 없으며, 내가 한인지 알고 armhf
, armel
또는 arm64
.
이것은 스크립트의 일부를 실행할 수 있는지 여부를 확인이 스크립트가 필요합니다, 나는 아키텍처가 있는지 확인하는 간단한 방법을 찾기 위해 노력하고 armhf
, armel
나 arm64
. 출력 중 어느 하나에 이용 될 수있는 한 줄 또는 간단한 명령 있는가 armhf
, armel
또는은 arm64
?
이 스크립트는 데비안과 우분투 시스템을 위해 특별히 작성되었으며, 이것을 염두에두고 태그를 작성하고 있습니다 (그 배포판 중 하나에 있지 않으면 자동으로 종료되지만, 명령이 존재합니다)
편집 : 최근 armel이 죽었고 arm64 소프트웨어 빌더 (PPA 또는 가상 기반)가 가장 안정적이지 않다는 것을 알게되었습니다. 그래서 와일드 카드를 찾고 arm*
armhf를 가정하고 있지만 우분투 / 데비안 명령이든 커널 호출이든 관계없이 세 가지 중 하나를 반환하는 하나의 라이너를 찾아야합니다.
i386
, i686
그리고 x86_64
기반의 경우 uname -m
, 만에 아무것도 arm??
... 또는 적어도, 아무것도 그 식별 armhf
, armel
또는 arm64
) .
uname -m
에서 특정 암 보드를 뱉습니다 ( armv7l
예 :) . 그것은 명시 적으로인지 말하지 않는다 armel
, armhf
또는 arm64
내가 필요하다 - $(arch)
와 호환되지 않는 OS 아키텍처 걸러 순서로 끝날 수 있습니다.
case $(arch) in ; armf)... ;; armel)... ;; arm64)... ;; *) exit ;; esac
이런 식으로 되었습니까?