제가 가끔 아는 것도 없으면서 컴퓨터에 대해 아는척 잘난척 하다가 이렇게 가끔 엉뚱한 얘기도 한번 해보겠습니다.


하두 답답해서 그럽니다.


구멍가게 형태의 슈퍼마켓을 간혹 보면 일체 가격을 명시해 놓지 않는 사장님들을 보실수 있습니다.


한마디로 이왕 한 번 파는 거 원가격 이상으로 비싸게 팔겠다 이거죠.



하지만 손님은 바보가 아닙니다.



물건들의 값이 명시되어 있지 않으면 이왕 마켓에 들어온 이상 두려움 때문에 딱 자기 살 것만 사고 나갑니다.


그러면 결과적으로 누가 패배한 겁니까?


슈퍼마켓이 아주 쉽게 패하는 거죠.



슈퍼마켓은 장사를 하려면 현금흐름율을 가장 크게 높여야 합니다.


이 말뜻은 대부분의 물건들은 기한이 있으니 빨리 팔고 새것으로 교체 해야 한다는 말이죠.


한데 고작 쪼금 팔고 "많이 남았네, 헤헤" 하시는 사장님들 있어서 정말 안타깝습니다.



그 쪼금 사고 돈을 많이 지불한 고객은 급하지 않은 이상 그곳에 자주 오겠습니까?


웬만해서는 안 오죠.



오래전에는 제품에 '권장소비자 가격' 표기가 있었죠.


그때는 손님이 가격을 확인하기 위해 물건을 들때 동시에 구입 가능성도 높아 지니 어느 슈퍼마켓이든 크게 신경 쓰지 않아도 장사가 잘 되었습니다.

슈퍼마켓 하나로 아이를 대학까지 보낼수 있을 정도 였으니까요.


하지만 지금은 달라 졌습니다.


'권장 소비자 가격'이 사라졌으면 그것을 최대한 활용 해야 합니다.


그것은 가격을 명시해서 수시 조절하여 소수 품목의 할인으로 시선을 끌어 단골 고객들을 유지 할 수 있기 때문 입니다.


그것이 대형마트나 SSM등과 상대할수 있는 가장 큰 비기 입니다.



많은 여론의 비판에도  SSM의 대중적 인기가 끊이질 않는 이유는 그들은 제가 말한 '가격 명찰제'를 하나라도 빠짐없이 이행하기 때문입니다.

제가 가끔 아는 것도 없으면서 컴퓨터에 대해 아는척 잘난척 하다가 이렇게 가끔 엉뚱한 얘기도 한번 해보겠습니다.


하두 답답해서 그럽니다.


구멍가게 형태의 슈퍼마켓을 간혹 보면 일체 가격을 명시해 놓지 않는 사장님들을 보실수 있습니다.


한마디로 이왕 한 번 파는 거 원가격 이상으로 비싸게 팔겠다 이거죠.



하지만 손님은 바보가 아닙니다.



물건들의 값이 명시되어 있지 않으면 이왕 마켓에 들어온 이상 두려움 때문에 딱 자기 살 것만 사고 나갑니다.


그러면 결과적으로 누가 패배한 겁니까?


슈퍼마켓이 아주 쉽게 패하는 거죠.



슈퍼마켓은 장사를 하려면 현금흐름율을 가장 크게 높여야 합니다.


이 말뜻은 대부분의 물건들은 기한이 있으니 빨리 팔고 새것으로 교체 해야 한다는 말이죠.


한데 고작 쪼금 팔고 "많이 남았네, 헤헤" 하시는 사장님들 있어서 정말 안타깝습니다.



그 쪼금 사고 돈을 많이 지불한 고객은 급하지 않은 이상 그곳에 자주 오겠습니까?


웬만해서는 안 오죠.



오래전에는 제품에 '권장소비자 가격' 표기가 있었죠.


그때는 손님이 가격을 확인하기 위해 물건을 들때 동시에 구입 가능성도 높아 지니 어느 슈퍼마켓이든 크게 신경 쓰지 않아도 장사가 잘 되었습니다.

슈퍼마켓 하나로 아이를 대학까지 보낼수 있을 정도 였으니까요.


하지만 지금은 달라 졌습니다.


'권장 소비자 가격'이 사라졌으면 그것을 최대한 활용 해야 합니다.


그것은 가격을 명시해서 수시 조절하여 소수 품목의 할인으로 시선을 끌어 단골 고객들을 유지 할 수 있기 때문 입니다.


그것이 대형마트나 SSM등과 상대할수 있는 가장 큰 비기 입니다.



많은 여론의 비판에도  SSM의 대중적 인기가 끊이질 않는 이유는 그들은 제가 말한 '가격 명찰제'를 하나라도 빠짐없이 이행하기 때문입니다.

제가 가끔 아는 것도 없으면서 컴퓨터에 대해 아는척 잘난척 하다가 이렇게 가끔 엉뚱한 얘기도 한번 해보겠습니다.


하두 답답해서 그럽니다.


구멍가게 형태의 슈퍼마켓을 간혹 보면 일체 가격을 명시해 놓지 않는 사장님들을 보실수 있습니다.


한마디로 이왕 한 번 파는 거 원가격 이상으로 비싸게 팔겠다 이거죠.



하지만 손님은 바보가 아닙니다.



물건들의 값이 명시되어 있지 않으면 이왕 마켓에 들어온 이상 두려움 때문에 딱 자기 살 것만 사고 나갑니다.


그러면 결과적으로 누가 패배한 겁니까?


슈퍼마켓이 아주 쉽게 패하는 거죠.



슈퍼마켓은 장사를 하려면 현금흐름율을 가장 크게 높여야 합니다.


이 말뜻은 대부분의 물건들은 기한이 있으니 빨리 팔고 새것으로 교체 해야 한다는 말이죠.


한데 고작 쪼금 팔고 "많이 남았네, 헤헤" 하시는 사장님들 있어서 정말 안타깝습니다.



그 쪼금 사고 돈을 많이 지불한 고객은 급하지 않은 이상 그곳에 자주 오겠습니까?


웬만해서는 안 오죠.



오래전에는 제품에 '권장소비자 가격' 표기가 있었죠.


그때는 손님이 가격을 확인하기 위해 물건을 들때 동시에 구입 가능성도 높아 지니 어느 슈퍼마켓이든 크게 신경 쓰지 않아도 장사가 잘 되었습니다.

슈퍼마켓 하나로 아이를 대학까지 보낼수 있을 정도 였으니까요.


하지만 지금은 달라 졌습니다.


'권장 소비자 가격'이 사라졌으면 그것을 최대한 활용 해야 합니다.


그것은 가격을 명시해서 수시 조절하여 소수 품목의 할인으로 시선을 끌어 단골 고객들을 유지 할 수 있기 때문 입니다.


그것이 대형마트나 SSM등과 상대할수 있는 가장 큰 비기 입니다.



많은 여론의 비판에도  SSM의 대중적 인기가 끊이질 않는 이유는 그들은 제가 말한 '가격 명찰제'를 하나라도 빠짐없이 이행하기 때문입니다.

[소프트웨어 개발 계획] LDIC (리눅스 사전: Linux -dictionary) 개발 예정


쉘스크립트나 시스템 운영, 콘솔 운영 등 개발자나 사용자가 원할 하게 잊어버리 거나 햇갈리는 명령어 들을 바로 손쉽게 찾아 줄수 있는 터미널용 '사전 소프트웨어'를 개발할 예정 입니다.


뿐만 아니라 소스 코딩 개발에 있어서 각 언어에서 필요한 구문자들을 한번에 찾아서 볼 수 있도록 도와주는 기능 까지 갖출 예정 입니다.


[ name ]


ldic


[ 아키텍쳐 ]


x86_amd64, i386, armhf..


[ 개발 언어 ]


bash & python


[ 예상 개발 완료 및 배포 날짜 ]


미정


   

glsc 0.1  가이드


glsc < GLade Source Cooker > 는 개발자를 위한 bash 유틸 프로그램 으로써 글레이드로 생성한 빌드 프로젝트 파일을 C언어 및 파이썬 언어의 소스코드 파일로 쿠킹 해주는 기능을 가지고 있으며 c언어인 경우 gcc compile과 실행까지 해주는 기능을 가지고 있습니다.


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 먼저 설치한 glsc의 사용자 도움말을 확인 합니다.


root@test:~$     glsc --help


< glsc : GLade Source Cooker >

This program is make the source C and Python for glade file.

Version : 0.1

usage help :

    -c : making C langauge source file.
        ex: glsc -c project.glade
 
    -r : compile maked C file and run the maked program by use thee gcc & libgtk3.0+ package.
        ex: glsc -r project
   
    -p : making python source file.
        ex: glsc -p project.glade

Online help : http://cosmosproject2015.tistory.com

Good luck~!




C 언어로 쿠킹


// 글레이드에서 빌드 프로젝트 예제를 생성해 봅니다.





-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 생성된 글레이드 파일을 C언어 소스를 쿠킹해 봅니다.


root@test:~$    glsc -c test.glade


Maked source file (test.glade.c) successed.

How to run :

    glsc -r test   

Good luck for your development~!


// 빌드된 소스코드를 확인하고 편집합니다.









-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 완성된 소스코드를 자동으로 컴파일 후 실행하는 명령을 수행 합니다.


root@test:~$    glsc -r test








-> 소스가 컴파일됨과 동시에 실행이 되며 실행 가능한 test 파일이 생성 된다.


Python 으로 쿠킹


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>

// 주석


root@test:~$    glsc -p test.glade


Maked source file (test.py) successed.

How to run :

    python test.py

Good luck for your development~!


-> 아까와는 다르게 'python test.py'으로 실행 하라고 나온다.


// 빌드된 소스코드 파일을 확인하고 편집합니다.


// 완성된 파이썬 코드를 실행해 봅니다.



root@test:~$    python test.py





가이드 영상



glsc 0.1 설치 하러 가기


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


glsc 0.1  가이드


glsc < GLade Source Cooker > 는 개발자를 위한 bash 유틸 프로그램 으로써 글레이드로 생성한 빌드 프로젝트 파일을 C언어 및 파이썬 언어의 소스코드 파일로 쿠킹 해주는 기능을 가지고 있으며 c언어인 경우 gcc compile과 실행까지 해주는 기능을 가지고 있습니다.


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 먼저 설치한 glsc의 사용자 도움말을 확인 합니다.


root@test:~$     glsc --help


< glsc : GLade Source Cooker >

This program is make the source C and Python for glade file.

Version : 0.1

usage help :

    -c : making C langauge source file.
        ex: glsc -c project.glade
 
    -r : compile maked C file and run the maked program by use thee gcc & libgtk3.0+ package.
        ex: glsc -r project
   
    -p : making python source file.
        ex: glsc -p project.glade

Online help : http://cosmosproject2015.tistory.com

Good luck~!




C 언어로 쿠킹


// 글레이드에서 빌드 프로젝트 예제를 생성해 봅니다.





-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 생성된 글레이드 파일을 C언어 소스를 쿠킹해 봅니다.


root@test:~$    glsc -c test.glade


Maked source file (test.glade.c) successed.

How to run :

    glsc -r test   

Good luck for your development~!


// 빌드된 소스코드를 확인하고 편집합니다.









-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 완성된 소스코드를 자동으로 컴파일 후 실행하는 명령을 수행 합니다.


root@test:~$    glsc -r test








-> 소스가 컴파일됨과 동시에 실행이 되며 실행 가능한 test 파일이 생성 된다.


Python 으로 쿠킹


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>

// 주석


root@test:~$    glsc -p test.glade


Maked source file (test.py) successed.

How to run :

    python test.py

Good luck for your development~!


-> 아까와는 다르게 'python test.py'으로 실행 하라고 나온다.


// 빌드된 소스코드 파일을 확인하고 편집합니다.


// 완성된 파이썬 코드를 실행해 봅니다.



root@test:~$    python test.py





가이드 영상



glsc 0.1 설치 하러 가기


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


glsc 0.1  가이드


glsc < GLade Source Cooker > 는 개발자를 위한 bash 유틸 프로그램 으로써 글레이드로 생성한 빌드 프로젝트 파일을 C언어 및 파이썬 언어의 소스코드 파일로 쿠킹 해주는 기능을 가지고 있으며 c언어인 경우 gcc compile과 실행까지 해주는 기능을 가지고 있습니다.


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 먼저 설치한 glsc의 사용자 도움말을 확인 합니다.


root@test:~$     glsc --help


< glsc : GLade Source Cooker >

This program is make the source C and Python for glade file.

Version : 0.1

usage help :

    -c : making C langauge source file.
        ex: glsc -c project.glade
 
    -r : compile maked C file and run the maked program by use thee gcc & libgtk3.0+ package.
        ex: glsc -r project
   
    -p : making python source file.
        ex: glsc -p project.glade

Online help : http://cosmosproject2015.tistory.com

Good luck~!




C 언어로 쿠킹


// 글레이드에서 빌드 프로젝트 예제를 생성해 봅니다.





-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 생성된 글레이드 파일을 C언어 소스를 쿠킹해 봅니다.


root@test:~$    glsc -c test.glade


Maked source file (test.glade.c) successed.

How to run :

    glsc -r test   

Good luck for your development~!


// 빌드된 소스코드를 확인하고 편집합니다.









-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 완성된 소스코드를 자동으로 컴파일 후 실행하는 명령을 수행 합니다.


root@test:~$    glsc -r test








-> 소스가 컴파일됨과 동시에 실행이 되며 실행 가능한 test 파일이 생성 된다.


Python 으로 쿠킹


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>

// 주석


root@test:~$    glsc -p test.glade


Maked source file (test.py) successed.

How to run :

    python test.py

Good luck for your development~!


-> 아까와는 다르게 'python test.py'으로 실행 하라고 나온다.


// 빌드된 소스코드 파일을 확인하고 편집합니다.


// 완성된 파이썬 코드를 실행해 봅니다.



root@test:~$    python test.py





가이드 영상



glsc 0.1 설치 하러 가기


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


파이썬에서 명령행의 필드를 인지하여 활용하는 방법에 대하여 알아 보도록 하자.

Bash에서 명령행의 필드를 인지할 때는 '$1(필드의 첫번째)'를 사용하면 되지만 파이썬 에서는 시스템 모듈과 'sys.argv[NUM]'명령을 활용해야 한다.

먼저 간단한 명령행 필드열1만 읽어 들여 간단하게 응용하는 파이썬 소스코딩 부터 해 보도록 하자. 


무제

Source_File name : tp1.py     |     [Download]    |     Type : Python         클립보드로 복사 → (본문 클릭)



그렇다면 이제 저장한 파이썬 파일을 '1' 과 함께 입력 했을때와 다른 것들을 입력했을때를 실행 테스트 해 보자.



// 실행 명령행에 1을 입력해 본다.


root@test:~$ python pb1.py 1

Good!



//  이번에는 다른 문자를 입력해 본다.



root@test:~$ python pb1.py test

Sorry you insert test


-> 입력한 'test'를 텍스트로 그대로 반환한다.




실행 및 테스트에 성공 하였다면 이번에는 명령행의 '필드열 1'과  '필드열 2'를 실행시 입력받아 둘의 숫자를 더하여서 출력하는 프로그램을 만들어 보자.


무제

Source_File name : tp2.py    |     [Download]    |     Type : Python         클립보드로 복사 → (본문 클릭)


테스트를 실시해 본다.



// 실행과 함께 명령행  필드에 두 가지 숫자를 입력한다.


root@test:~$ python tp2.py 3 5

3+5=

8

-> 입력한 각 필드의 출력과 함께 계산된 값이 출력 된다.




도움이 되셨다면 '♡' 버튼을 꼭 눌러 주시면 감사 하겠습니다.




파이썬에서 명령행의 필드를 인지하여 활용하는 방법에 대하여 알아 보도록 하자.

Bash에서 명령행의 필드를 인지할 때는 '$1(필드의 첫번째)'를 사용하면 되지만 파이썬 에서는 시스템 모듈과 'sys.argv[NUM]'명령을 활용해야 한다.

먼저 간단한 명령행 필드열1만 읽어 들여 간단하게 응용하는 파이썬 소스코딩 부터 해 보도록 하자. 


무제

Source_File name : tp1.py     |     [Download]    |     Type : Python         클립보드로 복사 → (본문 클릭)



그렇다면 이제 저장한 파이썬 파일을 '1' 과 함께 입력 했을때와 다른 것들을 입력했을때를 실행 테스트 해 보자.



// 실행 명령행에 1을 입력해 본다.


root@test:~$ python pb1.py 1

Good!



//  이번에는 다른 문자를 입력해 본다.



root@test:~$ python pb1.py test

Sorry you insert test


-> 입력한 'test'를 텍스트로 그대로 반환한다.




실행 및 테스트에 성공 하였다면 이번에는 명령행의 '필드열 1'과  '필드열 2'를 실행시 입력받아 둘의 숫자를 더하여서 출력하는 프로그램을 만들어 보자.


무제

Source_File name : tp2.py    |     [Download]    |     Type : Python         클립보드로 복사 → (본문 클릭)


테스트를 실시해 본다.



// 실행과 함께 명령행  필드에 두 가지 숫자를 입력한다.


root@test:~$ python tp2.py 3 5

3+5=

8

-> 입력한 각 필드의 출력과 함께 계산된 값이 출력 된다.




도움이 되셨다면 '♡' 버튼을 꼭 눌러 주시면 감사 하겠습니다.




리눅스에서 아주 쉬운 콘솔에서의 환경변수에 대해서 알아보자.

'환경변수' 라는 것은 그럴듯하게 어렵게 들릴수도 있겠지만 매우 쉬우며 어렵지 않다.

그냥 단순하게 환경의 조건을 정하는 것이다.

어떤 운영체제를 다룬다면 그 체제의 왕은 절대적으로 여러분이다.

그렇다. 여러분이 왕이 되어서 어떤 여러가지 문자를 함축적으로 정하는 것이다.

예를 들어,

"she=my love" 라고 정하고 싶다면 보통 프로그래밍 에서는 변수를 이렇게 설정한다.

she="my love"

그냥 바로 이거다. 이것이 변수라는 것이다.

얼마나 쉬운가?

여기에서 변수에 환경이란 말을 더하여 콘솔에서의 '환경변수'를 절대적으로 정한다고 한다면 터미널에 그저 'export'를 앞에 갖다 붙히기만 하면 되는 것이다.

자 그러면 터미널에서 그것을 한번 시험해 보도록 하자.




// 환경변수를 지정한다.


root@test:~$ export she="my love"



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love

-> 'she'에 대한 환경변수가 출력 되는데 성공했다.





보시는 바와 같이 "my love" 라는 글이 출력 되는 것을 볼 수가 있다.

그리고 중요한 것은 그것을 불러오는 명령에서 she 앞에 '$'를 붙였다는 것이다.
'$' 문자는 유닉스 시스템의 쉘 스크립트 에서 변수를 불러오는 매우 중요한 담당 역할을 하는 문자 이다.

하지만 이와 같은 단순한 환경변수 지정은 여러분이 연 그 터미널에서만 변수로 동작하며 다른 터미널 콘솔 에서는 변수로 지정 되지 않는다.

그렇다면 변수를 계속 유지되도록 전역설정을 하려면 어떻게해야 할까?

이는 '$/HOME/.bashrc' 파일에 해당 스크립트를 입력하여 처리가 가능하다.
($HOME = /home/user)


// 먼저 만일을 대비해서 bashrc의 백업을 만든다. (물론 부팅시를 기준으로 한 백업 파일인 '$HOME/.bashrc~'가 존재 한다.) 


root@test:~$ cp ~/.bashrc ~/.bashrc.bak



// .bashrc 파일에 추가할 환경변수를 삽입 한다.


root@test:~$ echo 'export she="my love"' >> ~/.bashrc



// 재부팅 할 필요 없이 '~/.bashrc' 파일의 소스를 로드한다.


root@test:~$ source ~/.bashrc



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love


-> 'she'에 대한 환경변수가 출력 되는데 성공했다.




이와 같은 환경변수는 전역 bash 프로그래밍에서 활용되며 여러 소프트웨어들이 이러한 환경변수를 활용한다.
대표적으로 많이 사용되는 환경변수들은 다음과 같다.

$HOME     사용자의 홈 디렉토리
$PATH     실행 파일 경로
$LANG     환경변수에 설정된 언어
$PWD         사용자의 현재 작업중인 디렉토리
$SECONDS     해당 콘솔이 실행된 경과를 초 단위 시간으로 나타냄
$SHLVL     사용되는 쉘 레벨
$SHELL     사용되는 쉘 이름($BASH와 같게 나옴.)
$PPID     부모 프로세스의 PID
$BASH     BASH 실행 파일 경로
$BASH_VERSION     설치된 BASH 버전
$MAIL     환경변수에 설정된 메일주소
$OSTYPE     운영체제 종류
$TERM     현재 사용되는 터미널 이름
$HOSTNAME     호스트 전체 이름
$HOSTTYPE     시스템의 아키텍처
$MACHTYPE     PC의 아키텍쳐와 운영체제표시
$LOGNAME     로그인 사용자 이름
$UID         사용자 UID
$EUID     su 명령에서 사용하는 사용자의 유효 아이디 값(UID와 EUID 값은 다를 수 있음)
$USER     사용자의 이름
$HISTFILE     history파일의 경로
$DISPLAY     현재 사용되는 X 디스플레이 이름

도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


리눅스에서 아주 쉬운 콘솔에서의 환경변수에 대해서 알아보자.

'환경변수' 라는 것은 그럴듯하게 어렵게 들릴수도 있겠지만 매우 쉬우며 어렵지 않다.

그냥 단순하게 환경의 조건을 정하는 것이다.

어떤 운영체제를 다룬다면 그 체제의 왕은 절대적으로 여러분이다.

그렇다. 여러분이 왕이 되어서 어떤 여러가지 문자를 함축적으로 정하는 것이다.

예를 들어,

"she=my love" 라고 정하고 싶다면 보통 프로그래밍 에서는 변수를 이렇게 설정한다.

she="my love"

그냥 바로 이거다. 이것이 변수라는 것이다.

얼마나 쉬운가?

여기에서 변수에 환경이란 말을 더하여 콘솔에서의 '환경변수'를 절대적으로 정한다고 한다면 터미널에 그저 'export'를 앞에 갖다 붙히기만 하면 되는 것이다.

자 그러면 터미널에서 그것을 한번 시험해 보도록 하자.




// 환경변수를 지정한다.


root@test:~$ export she="my love"



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love

-> 'she'에 대한 환경변수가 출력 되는데 성공했다.





보시는 바와 같이 "my love" 라는 글이 출력 되는 것을 볼 수가 있다.

그리고 중요한 것은 그것을 불러오는 명령에서 she 앞에 '$'를 붙였다는 것이다.
'$' 문자는 유닉스 시스템의 쉘 스크립트 에서 변수를 불러오는 매우 중요한 담당 역할을 하는 문자 이다.

하지만 이와 같은 단순한 환경변수 지정은 여러분이 연 그 터미널에서만 변수로 동작하며 다른 터미널 콘솔 에서는 변수로 지정 되지 않는다.

그렇다면 변수를 계속 유지되도록 전역설정을 하려면 어떻게해야 할까?

이는 '$/HOME/.bashrc' 파일에 해당 스크립트를 입력하여 처리가 가능하다.
($HOME = /home/user)


// 먼저 만일을 대비해서 bashrc의 백업을 만든다. (물론 부팅시를 기준으로 한 백업 파일인 '$HOME/.bashrc~'가 존재 한다.) 


root@test:~$ cp ~/.bashrc ~/.bashrc.bak



// .bashrc 파일에 추가할 환경변수를 삽입 한다.


root@test:~$ echo 'export she="my love"' >> ~/.bashrc



// 재부팅 할 필요 없이 '~/.bashrc' 파일의 소스를 로드한다.


root@test:~$ source ~/.bashrc



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love


-> 'she'에 대한 환경변수가 출력 되는데 성공했다.




이와 같은 환경변수는 전역 bash 프로그래밍에서 활용되며 여러 소프트웨어들이 이러한 환경변수를 활용한다.
대표적으로 많이 사용되는 환경변수들은 다음과 같다.

$HOME     사용자의 홈 디렉토리
$PATH     실행 파일 경로
$LANG     환경변수에 설정된 언어
$PWD         사용자의 현재 작업중인 디렉토리
$SECONDS     해당 콘솔이 실행된 경과를 초 단위 시간으로 나타냄
$SHLVL     사용되는 쉘 레벨
$SHELL     사용되는 쉘 이름($BASH와 같게 나옴.)
$PPID     부모 프로세스의 PID
$BASH     BASH 실행 파일 경로
$BASH_VERSION     설치된 BASH 버전
$MAIL     환경변수에 설정된 메일주소
$OSTYPE     운영체제 종류
$TERM     현재 사용되는 터미널 이름
$HOSTNAME     호스트 전체 이름
$HOSTTYPE     시스템의 아키텍처
$MACHTYPE     PC의 아키텍쳐와 운영체제표시
$LOGNAME     로그인 사용자 이름
$UID         사용자 UID
$EUID     su 명령에서 사용하는 사용자의 유효 아이디 값(UID와 EUID 값은 다를 수 있음)
$USER     사용자의 이름
$HISTFILE     history파일의 경로
$DISPLAY     현재 사용되는 X 디스플레이 이름

도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


리눅스에서 아주 쉬운 콘솔에서의 환경변수에 대해서 알아보자.

'환경변수' 라는 것은 그럴듯하게 어렵게 들릴수도 있겠지만 매우 쉬우며 어렵지 않다.

그냥 단순하게 환경의 조건을 정하는 것이다.

어떤 운영체제를 다룬다면 그 체제의 왕은 절대적으로 여러분이다.

그렇다. 여러분이 왕이 되어서 어떤 여러가지 문자를 함축적으로 정하는 것이다.

예를 들어,

"she=my love" 라고 정하고 싶다면 보통 프로그래밍 에서는 변수를 이렇게 설정한다.

she="my love"

그냥 바로 이거다. 이것이 변수라는 것이다.

얼마나 쉬운가?

여기에서 변수에 환경이란 말을 더하여 콘솔에서의 '환경변수'를 절대적으로 정한다고 한다면 터미널에 그저 'export'를 앞에 갖다 붙히기만 하면 되는 것이다.

자 그러면 터미널에서 그것을 한번 시험해 보도록 하자.




// 환경변수를 지정한다.


root@test:~$ export she="my love"



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love

-> 'she'에 대한 환경변수가 출력 되는데 성공했다.





보시는 바와 같이 "my love" 라는 글이 출력 되는 것을 볼 수가 있다.

그리고 중요한 것은 그것을 불러오는 명령에서 she 앞에 '$'를 붙였다는 것이다.
'$' 문자는 유닉스 시스템의 쉘 스크립트 에서 변수를 불러오는 매우 중요한 담당 역할을 하는 문자 이다.

하지만 이와 같은 단순한 환경변수 지정은 여러분이 연 그 터미널에서만 변수로 동작하며 다른 터미널 콘솔 에서는 변수로 지정 되지 않는다.

그렇다면 변수를 계속 유지되도록 전역설정을 하려면 어떻게해야 할까?

이는 '$/HOME/.bashrc' 파일에 해당 스크립트를 입력하여 처리가 가능하다.
($HOME = /home/user)


// 먼저 만일을 대비해서 bashrc의 백업을 만든다. (물론 부팅시를 기준으로 한 백업 파일인 '$HOME/.bashrc~'가 존재 한다.) 


root@test:~$ cp ~/.bashrc ~/.bashrc.bak



// .bashrc 파일에 추가할 환경변수를 삽입 한다.


root@test:~$ echo 'export she="my love"' >> ~/.bashrc



// 재부팅 할 필요 없이 '~/.bashrc' 파일의 소스를 로드한다.


root@test:~$ source ~/.bashrc



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love


-> 'she'에 대한 환경변수가 출력 되는데 성공했다.




이와 같은 환경변수는 전역 bash 프로그래밍에서 활용되며 여러 소프트웨어들이 이러한 환경변수를 활용한다.
대표적으로 많이 사용되는 환경변수들은 다음과 같다.

$HOME     사용자의 홈 디렉토리
$PATH     실행 파일 경로
$LANG     환경변수에 설정된 언어
$PWD         사용자의 현재 작업중인 디렉토리
$SECONDS     해당 콘솔이 실행된 경과를 초 단위 시간으로 나타냄
$SHLVL     사용되는 쉘 레벨
$SHELL     사용되는 쉘 이름($BASH와 같게 나옴.)
$PPID     부모 프로세스의 PID
$BASH     BASH 실행 파일 경로
$BASH_VERSION     설치된 BASH 버전
$MAIL     환경변수에 설정된 메일주소
$OSTYPE     운영체제 종류
$TERM     현재 사용되는 터미널 이름
$HOSTNAME     호스트 전체 이름
$HOSTTYPE     시스템의 아키텍처
$MACHTYPE     PC의 아키텍쳐와 운영체제표시
$LOGNAME     로그인 사용자 이름
$UID         사용자 UID
$EUID     su 명령에서 사용하는 사용자의 유효 아이디 값(UID와 EUID 값은 다를 수 있음)
$USER     사용자의 이름
$HISTFILE     history파일의 경로
$DISPLAY     현재 사용되는 X 디스플레이 이름

도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


리눅스에서 아주 쉬운 콘솔에서의 환경변수에 대해서 알아보자.

'환경변수' 라는 것은 그럴듯하게 어렵게 들릴수도 있겠지만 매우 쉬우며 어렵지 않다.

그냥 단순하게 환경의 조건을 정하는 것이다.

어떤 운영체제를 다룬다면 그 체제의 왕은 절대적으로 여러분이다.

그렇다. 여러분이 왕이 되어서 어떤 여러가지 문자를 함축적으로 정하는 것이다.

예를 들어,

"she=my love" 라고 정하고 싶다면 보통 프로그래밍 에서는 변수를 이렇게 설정한다.

she="my love"

그냥 바로 이거다. 이것이 변수라는 것이다.

얼마나 쉬운가?

여기에서 변수에 환경이란 말을 더하여 콘솔에서의 '환경변수'를 절대적으로 정한다고 한다면 터미널에 그저 'export'를 앞에 갖다 붙히기만 하면 되는 것이다.

자 그러면 터미널에서 그것을 한번 시험해 보도록 하자.




// 환경변수를 지정한다.


root@test:~$ export she="my love"



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love

-> 'she'에 대한 환경변수가 출력 되는데 성공했다.





보시는 바와 같이 "my love" 라는 글이 출력 되는 것을 볼 수가 있다.

그리고 중요한 것은 그것을 불러오는 명령에서 she 앞에 '$'를 붙였다는 것이다.
'$' 문자는 유닉스 시스템의 쉘 스크립트 에서 변수를 불러오는 매우 중요한 담당 역할을 하는 문자 이다.

하지만 이와 같은 단순한 환경변수 지정은 여러분이 연 그 터미널에서만 변수로 동작하며 다른 터미널 콘솔 에서는 변수로 지정 되지 않는다.

그렇다면 변수를 계속 유지되도록 전역설정을 하려면 어떻게해야 할까?

이는 '$/HOME/.bashrc' 파일에 해당 스크립트를 입력하여 처리가 가능하다.
($HOME = /home/user)


// 먼저 만일을 대비해서 bashrc의 백업을 만든다. (물론 부팅시를 기준으로 한 백업 파일인 '$HOME/.bashrc~'가 존재 한다.) 


root@test:~$ cp ~/.bashrc ~/.bashrc.bak



// .bashrc 파일에 추가할 환경변수를 삽입 한다.


root@test:~$ echo 'export she="my love"' >> ~/.bashrc



// 재부팅 할 필요 없이 '~/.bashrc' 파일의 소스를 로드한다.


root@test:~$ source ~/.bashrc



// 지정된 환경변수를 불러온다.


root@test:~$ echo $she

my love


-> 'she'에 대한 환경변수가 출력 되는데 성공했다.




이와 같은 환경변수는 전역 bash 프로그래밍에서 활용되며 여러 소프트웨어들이 이러한 환경변수를 활용한다.
대표적으로 많이 사용되는 환경변수들은 다음과 같다.

$HOME     사용자의 홈 디렉토리
$PATH     실행 파일 경로
$LANG     환경변수에 설정된 언어
$PWD         사용자의 현재 작업중인 디렉토리
$SECONDS     해당 콘솔이 실행된 경과를 초 단위 시간으로 나타냄
$SHLVL     사용되는 쉘 레벨
$SHELL     사용되는 쉘 이름($BASH와 같게 나옴.)
$PPID     부모 프로세스의 PID
$BASH     BASH 실행 파일 경로
$BASH_VERSION     설치된 BASH 버전
$MAIL     환경변수에 설정된 메일주소
$OSTYPE     운영체제 종류
$TERM     현재 사용되는 터미널 이름
$HOSTNAME     호스트 전체 이름
$HOSTTYPE     시스템의 아키텍처
$MACHTYPE     PC의 아키텍쳐와 운영체제표시
$LOGNAME     로그인 사용자 이름
$UID         사용자 UID
$EUID     su 명령에서 사용하는 사용자의 유효 아이디 값(UID와 EUID 값은 다를 수 있음)
$USER     사용자의 이름
$HISTFILE     history파일의 경로
$DISPLAY     현재 사용되는 X 디스플레이 이름

도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


 우선 먼저 밝혀야 하는 것은 가장 큰 진도가 느껴진 경주 지역은 아주 오래전 조선왕조실록에서 기록되었을 만큼 한반도에서의 강력한 잠재적인 지진대에 속하는 것이 사실이다.
 
     근거 : http://news.kbs.co.kr/news/view.do?ncd=3344457
    
하지만 그 보다 더 중요한 것은 이번 지진이 경주 뿐만이 아니라 거의 전국 전부에서 감지 되었다는 사실이다.

그리고 그것으로 인하여 현재 인터넷에서는 한가지 큰 루머가 퍼지고 있는데 바로 그것은 '북한의 핵실험이 이번 지진에 영향을 줬다.' 라는 것이다.

과연 그것은 사실일까?

필자는 이번 포스팅에서 개인적인 의견은 일체 반영하지 않겠다.

검색을 디테일 적으로 해보니 국제적으로 그것에 대한 근거 자료들이 상당히 많이 존재하는 것을 알게 되었다.

먼저 북한의 핵실험이 백두산의 화산활동을 자극할수 있다는 연구발표는 이미 많이 접해 봐서 알 것이다.

    근거1. :  http://www.rfa.org/korean/weekly_program/environment/environment-04282016095417.html
     근거2. : http://mn.kbs.co.kr/news/view.do?ncd=3233977
   

그리고 이미 미국 지질조사국(USGS)에서는 이미 그 가능성에 대해 염두고 두고 있는 자료를 가지고 있으며 대부분의 과학자들이 핵실험이 실험 영역 외부에 지진대에 영향을 줄 수 있다는 가능성을 동의하고 있다는 사실을 기재 하고 있다.  



    근거 : https://www2.usgs.gov/faq/node/3339

(USGS)



    근거 : http://earthquake.usgs.gov/learn/topics/megaqk_facts_fantasy.php


(USGS)



   
다음 위키백과 사전 에서도 핵실험 장소에서 멀리 떨어진 곳에서 지진이 발생할 수 있다는 사실이 기재되어 있다.

    근거 : https://en.wikipedia.org/wiki/Effects_of_nuclear_explosions

(위키백과 원문)




 이상 핵실험이 멀리 떨어진 곳에 지진대에 영향을 끼칠수 있다는 근거들을 종합해 보았다.


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


 우선 먼저 밝혀야 하는 것은 가장 큰 진도가 느껴진 경주 지역은 아주 오래전 조선왕조실록에서 기록되었을 만큼 한반도에서의 강력한 잠재적인 지진대에 속하는 것이 사실이다.
 
     근거 : http://news.kbs.co.kr/news/view.do?ncd=3344457
    
하지만 그 보다 더 중요한 것은 이번 지진이 경주 뿐만이 아니라 거의 전국 전부에서 감지 되었다는 사실이다.

그리고 그것으로 인하여 현재 인터넷에서는 한가지 큰 루머가 퍼지고 있는데 바로 그것은 '북한의 핵실험이 이번 지진에 영향을 줬다.' 라는 것이다.

과연 그것은 사실일까?

필자는 이번 포스팅에서 개인적인 의견은 일체 반영하지 않겠다.

검색을 디테일 적으로 해보니 국제적으로 그것에 대한 근거 자료들이 상당히 많이 존재하는 것을 알게 되었다.

먼저 북한의 핵실험이 백두산의 화산활동을 자극할수 있다는 연구발표는 이미 많이 접해 봐서 알 것이다.

    근거1. :  http://www.rfa.org/korean/weekly_program/environment/environment-04282016095417.html
     근거2. : http://mn.kbs.co.kr/news/view.do?ncd=3233977
   

그리고 이미 미국 지질조사국(USGS)에서는 이미 그 가능성에 대해 염두고 두고 있는 자료를 가지고 있으며 대부분의 과학자들이 핵실험이 실험 영역 외부에 지진대에 영향을 줄 수 있다는 가능성을 동의하고 있다는 사실을 기재 하고 있다.  



    근거 : https://www2.usgs.gov/faq/node/3339




    근거 : http://earthquake.usgs.gov/learn/topics/megaqk_facts_fantasy.php




   
다음 위키백과 사전 에서도 핵실험 장소에서 멀리 떨어진 곳에서 지진이 발생할 수 있다는 사실이 기재되어 있다.

    근거 : https://en.wikipedia.org/wiki/Effects_of_nuclear_explosions
 




 이상 핵실험이 멀리 떨어진 곳에 지진대에 영향을 끼칠수 있다는 근거들을 종합해 보았다.


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


+ Recent posts