티스토리 뷰

IoT 과정

HPUX - Shell Advanced Features

gaelim 2017. 6. 21. 14:55
반응형

Shell Variable Storage : Local Variables + Environment Variables + Program Code (/usr/bin/sh)

{

$ name=yohan

$ set

...

name=yohan

....

}


Variable Substitution

$var : Directs the shell to perform variable substitution

{

$ echo $PATH

/usr/bin:/usr/contrib/bin: ...

$ PATH=$PATH:$HOME

/usr/bin: .... :/home/user11

}

Command Substitution

$(command) 


Process and Variable (Parent Child)

1 fork : program and data spaces are duplicated

2 exec : program and local data space are replaced with program and data of requested program (/usr/bin/vi) and program is executed 


{

$ ps -f

     UID   PID  PPID  C    STIME TTY       TIME COMMAND

    root 16761  1222  0 14:55:51 pts/te    0:00 telnetd -b /etc/issue

  user11 17268 16762  1 15:47:58 pts/te    0:00 ps -f

  user11 16762 16761  0 14:55:51 pts/te    0:00 -sh

UserID ProcessID Process'ParentID CPU StartTime 

telnetd -> sh -> ph-f 
Parent     Child  Child
...
}

{
$ ps -f
     UID   PID  PPID  C    STIME TTY       TIME COMMAND
  user11 17472 16762  0 15:55:54 pts/te    0:00 ps -f
    root 16761  1222  0 14:55:51 pts/te    0:00 telnetd -b /etc/issue
  user11 16762 16761  0 14:55:51 pts/te    0:00 -sh
$ color=red
$ echo $color
red
$ ksh
$ echo $color

} // child process에서는 parent의 local variable을 읽을수 없다.

{

$ exit

$ export color    //env. var로 변경

$ env

$ ksh
$ echo $color
red
$ color=blue
$ env
...
color=blue
...
$ exit 
$ echo $color
} // environment variable로 변경 후 읽을수 있음, child process의 environment variable 변경은 parent process에 상속되지 않는다. 


{

$ MYNAME='YO HAN'

$ echo $MYNAME

YO HAN

$ sh

$ echo $MYNAME

YO HAN

$ exit

$ vi .shrc

add line 

}

반응형

'IoT 과정' 카테고리의 다른 글

HPUX - Quoting  (0) 2017.06.21
HPUX - File Name Generation  (0) 2017.06.21
HPUX - Shell Basic  (0) 2017.06.21
HPUX - vi  (0) 2017.06.20
HPUX - File Permissions and Access  (0) 2017.06.20