4 개의 변수를 포함하는 스크립트가 있습니다. 이 4 개의 변수의 값을 취하여 가장 낮은 값을 갖는 함수의 이름을 반환하는 함수가 필요합니다. 그래서 내가 가지고 있다고 가정 해 봅시다 : var3
사람이 도와 드릴까요 : var1=55
var2=71
var3=30
var4=42
다음 내가 그것을 대답으로 돌아가시겠습니까? 나는 그것을 해결하는 가장 쉬운 방법이 필요하지만, 어떤 일하는 해결책을 고맙게 생각합니다.Bash 스크립팅 : 가장 낮은 값의 변수 찾기
1
A
답변
1
귀하의 질문에 당신의 값이 배열에 있다고 생각하지 않습니다 및 당신이 배열의 색인을 알고 싶어요 - 당신의 값을 개별 변수에 생각하고 변수의 이름을 알고 싶어요 가장 작은 값을 포함합니다. 그것이 실제로 당신이 요구하는 것 인 경우 :
func()
{
minvar=$1
eval minval=\$$1
for i in $*
do
eval var=\$$i
# echo $i=$var
if [[ $var -lt $minval ]]
then
minvar=$i
minval=$var
# echo min=$i
fi
done
}
var1=55
var2=71
var3=30
var4=42
func var1 var2 var3 var4
echo $minvar=$minval
+0
'내가 필요로하는 것처럼 보이지만 더 조사해야한다. beginner와 im은'\ $$ 1'이나'\ $$ i'에 익숙하지 않다. 그것은 실제로 무엇을합니다. 하지만 네, 그래서 내가 계속 전진 할 수있는 가장 작은 변수를 찾습니다. – Grzegorz
관련 문제
- 1. Linux Bash 스크립팅 프록시 변수
- 2. 해시에서 가장 낮은 값 찾기
- 3. bash 찾기 매개 변수
- 4. 가장 낮은 값의 레코드 ID를 얻습니다. Rails
- 5. TSQL은 가장 낮은 값의 ID를 얻습니다.
- 6. 가장 낮은 값의 키 가져 오기
- 7. 엑셀 - 가장 낮은 값의 평균 90 % 계산
- 8. bash 스크립팅.
- 9. bash 스크립팅 de-dupe
- 10. 가장 낮은 평균 학년 차이 찾기
- 11. 존재하지 않는 가장 낮은 ID 찾기
- 12. 특정 간격으로 가장 낮은 이차 루트 찾기
- 13. 행렬을 통해 가장 낮은 합계 경로 찾기
- 14. 텍스트 파일에서 숫자가 가장 낮은 행 찾기
- 15. SQL : hierarchyids의 가장 낮은 공통 조상 찾기
- 16. 파일에서 패스하는 Bash 스크립팅
- 17. Bash 스크립팅 인수
- 18. Bash 스크립팅 - Ping 모니터링?
- 19. Bash 스크립팅, 'for'루프 사용
- 20. bash 스크립팅 오류
- 21. Waitpid 사용법과 Bash 스크립팅
- 22. bash 화면 스크립팅
- 23. bash 스크립팅 개선
- 24. Bash 스크립팅 if 문
- 25. Bash 스크립팅 : 매개 변수를 greping
- 26. nmon에서 기본 bash 쉘 스크립팅
- 27. Bash 환경 변수 및 설치 디렉토리 찾기
- 28. SQL 일대일 관계에서 가장 낮은 변수 얻기
- 29. 분산 된지도의 가장 낮은/가장 높은 키 찾기
- 30. Bash 스크립팅 : 별표 문자 이스케이프
이것은 집입니까? 지금까지 어떤 코드를 작성 했습니까? 어떻게 입력을 수집합니까? 더 구체적으로 질문하십시오. 코드를 게시하십시오. 독자들에게 당신이 시도한 것을 알리십시오. 이것은 자유로운 대답을위한 장소가 아닙니다. – KeithSmith
조금 힌트 : http://stackoverflow.com/questions/12882089/bash-variable-name-from-variable – PasteBT
아니 숙제가 아니야. ! '#/빈/bash는 X = 12 Y = 35 Z = 7 Q = 24 VA = 0 VB = 0 NA = 0 주의 : 코드는 내가 지금까지에 와서 한 = 0 minval = 0 minname = 0 if (($ x <$ y)); 그러면 va = $ x na = x; 그렇지 않으면 va = $ y na = y; fi if (($ z <$ q)); 그렇다면 vb = $ z nb = z; else vb = $ q nb = q; fi if (($ va <$ vb)); minval = $ va minname = $ na; 그렇지 않으면 minval = $ vb minname = $ nb; fi echo $ minval echo $ minname ' – Grzegorz