Bash script 실행 할 때 Arguments 를 넣는 방법


C/C++ 에서 와 마찬가지로 Argument 순서대로 1, 2, 3, ... 으로 들어간다.(0번은 실행 스크립트 파일 이름)

달러+번호 가 해당 argument에 해당하며, argument 총 갯수는 $#으로 반환된다(여기서 argument의 총 갯수는 실행 스크립트 argument를 제외한 순수 argument 들의 갯수이다.)

실행 스크립트는 0번째 argument, 즉, $0가 된다.

if [ $# -ne 2 ]

then

echo "please input arguments"

echo "Usage:$0 <input1> <input2>

exit

fi


arg1=$1

arg2=$2


파일로 부터 읽어, Argument 를 전달 할 수 도 있다.

while read line

do 

echo $line

./script $line

done < $file


※ Bash script 내 에서 실행하는 다른 script 또는 다른 실행 파일로 print 를 하는 경우 argument 로 전달 될 수 있음


'Programming > Bash Script' 카테고리의 다른 글

Bash Script Variable Split by Space  (0) 2018.02.04
Bash Script Echo  (0) 2018.02.04
Bash Script String  (0) 2017.07.04
Bash Script If statement  (0) 2017.07.04
Bash script sudo 권한 체크  (1) 2017.06.19

Linux Time zone 변경 하는 방법


우선 date 명령어로 시스템의 시간을 확인하자

$ date

끝에 KST로 나와야 한국 시간


/etc/localtime 파일을 해당 타임존의 파일로 교체해 주면 된다. (binary 파일이라 열어도 알아볼 수는 없다.)

$ mv /etc/localtime /etc/localtime.bak

$ ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime


'Programming > Linux' 카테고리의 다른 글

HandBrakeCLI  (0) 2018.04.06
Linux sed  (0) 2018.02.05
Linux find  (0) 2018.02.04
Ubuntu sources.list generation  (0) 2017.09.06
Ubuntu Redshift  (0) 2017.07.02

Linux Kernel programming 을 할 때는 일반적인 printf 함수를 사용 할 수 없다.

Kernel 에서 Debugging 등을 위해 print를 하고자 하는 경우

printk 함수를 사용할 수 있다.

헤더는 linux/kernel.h


사용법은 printf 함수와 유사하다.

printk("hello world\n");

printk("a=%d\n, a);

사용법은 비슷하지만, kernel에서 print 하는 것이기 때문에 print 된 것은 userspace 에서 보이지 않는다.

따라서, 프로그램 실행 후에 dmesg 를 통해 kernel message 를 확인해야 한다.

$ dmesg


printk 사용 시 floating point number 를 print 하는 데 문제가 생길 수 있다.

undefined reference to __aeabi_f2d 라고 나오는 것은 그 때문이라고 할 수 있는데,

Floting point 자체를 지원하지 않기 때문이다.

Kernel 버전 혹은 CPU 에 따라 kernel 내부에서 floating point 를 지원하는 경우도 있고, 지원하지 않는 경우도 있다.

'Programming > Linux Kernel' 카테고리의 다른 글

cross kernel debugging  (0) 2020.06.19
Linux kernel module compile from linux source  (0) 2019.01.17
Kernel module programming  (0) 2018.05.23
Kernel Version Check  (0) 2018.05.23

+ Recent posts