사용자 제공 값에 10을 곱하는 프로그램이 있는 경우 매개변수가 전달되어 해당 매개변수를 가져오고 다른 프로그램의 출력을 수집하여 테이블로 구성하는 다른 bash 스크립트를 어떻게 작성합니까?
예를 들어:
[user]$ table 1 5
#
#Value Result
1 10
5 50
[user]$
답변1
#!/bin/sh
tenTimes(){
expr "$1" \* 10
}
table(){
printf '%s\t%s\n' \#Value Result
for a; do
printf '%s\t%s\n' "$a" "$(tenTimes "$a")"
done
}
table 1 5
산출:
#Value Result
1 10
5 50
답변2
절대 또는 상대 경로를 사용하여 쉘 해석기를 통해 이 작업을 수행할 수 있습니다.
/bin/sh /usr/local/bin/script
/usr/sbin/ksh ~/script
어쩌면 포함된 라이브러리와 같은 것을 사용하고 싶을 수도 있습니다.
#!/bin/sh
func_a() { echo $(($1%42)); }
다른 파일에서:
#!/bin/sh
. ~/path/to/func_a_file
func_a
또는 결과를 변수에 할당하는 동안 스크립트를 호출할 수도 있습니다.
var1=$(~/path/to/script)