2016년 12월 28일 수요일

python 2.7 한글문제

파이썬을 이용해서 작성할때 한글문제가 매번 생김.

2.7버전을 이용할경우 아래와 같이 변경해주면 일부  해결됨.

ascii 로 되어 있는 부분을 utf-8 로 변경해줌

sed -i 's/encoding = "ascii"/encoding = "utf-8"/g' site.py


2016년 12월 13일 화요일

[debian] Debian 패키지 만들기

데비안 패키지를 만드는 방법을 정리하려고 합니다.

왜 자꾸 까먹으니까~ 까먹지 않기위해 정리합니다.

최종 결과물은  linux의 커널 버전과 linux  버전을 확인하는 스크립트를 설치하는 패키지를 만드는 것입니다.

먼져 커널버전과 패키지버전을 확인 하는 스크립트는 아래와 같습니다.

파일명 : linuxversion

#$/bin/bash
echo "------------------------"
echo "Linux Version : "
echo "------------------------"
grep . /etc/*-release
echo "Linux Version : "
cat /etc/*-release | uniq
grep . /etc/issue*
uname -r
echo "------------------------"
echo "Kernel Version :"
echo "------------------------"
cat /proc/version

그럼 시작해보겠습니다.

최종 결과물의 디렉토리 구조는 아래와 같습니다.

.
|-- linuxversion
|   |-- DEBIAN
|   |   `-- control
|   `-- usr
|       `-- bin
|           `-- linuxversion
`-- linuxversion_1.3.4_all.deb

1. linuxversion 디랙토리 생성
mkdir -p linuxversion

2.Debian 디랙토리 생성
mkdir -p linuxversion/DEBIAN

3. 디랙토리 권한설정
find ./linuxversion -type d | xargs chmod 755   # this is necessary on Debian Woody, don't ask me why

4.usr/bin 디랙토리 생성
mkdir -p .usr/bin

5. 스크립트 파일생성
#$/bin/bash
echo "------------------------"
echo "Linux Version : "
echo "------------------------"
grep . /etc/*-release
echo "Linux Version : "
cat /etc/*-release | uniq
grep . /etc/issue*
uname -r
echo "------------------------"
echo "Kernel Version :"
echo "------------------------"
cat /proc/version

5-1 실행권한을 줍니다.

chmod +x linuxversion

6. control 파일생성

cd linuxversion/DEVIAN

vi control
---------------------------
Package: linuxversion
Version: 1.3.4
Section: devel
Priority: optional
Architecture: all
Depends: curl
Recommends:
Maintainer: Developers <kwangmyung.kim@gmail.com>
Homepage: http://xmlangel.blogspot.com
Description: linuxversion check install package
 1.0.1 : bug fetch..#1
 1.1.1 : bug fetch..#2
 1.2.0 : bug fetch..#3
-------------------------------

7. 빌드

dpkg-deb --build linuxversion

8. 이름변경 (버전구분을 위해 이름을 변경해줍니다.)
mv linuxversion.deb inuxversion_1.3.4_all.deb

9. 설치
dpkg -i linuxversion_1.3.4_all.deb

10. 실행

linuxversion
------------------------
Linux Version :
------------------------
/etc/lsb-release:DISTRIB_ID=Ubuntu
/etc/lsb-release:DISTRIB_RELEASE=14.04
/etc/lsb-release:DISTRIB_CODENAME=trusty
/etc/lsb-release:DISTRIB_DESCRIPTION="Ubuntu 14.04.5 LTS"
/etc/os-release:NAME="Ubuntu"
/etc/os-release:VERSION="14.04.5 LTS, Trusty Tahr"
/etc/os-release:ID=ubuntu
/etc/os-release:ID_LIKE=debian
/etc/os-release:PRETTY_NAME="Ubuntu 14.04.5 LTS"
/etc/os-release:VERSION_ID="14.04"
/etc/os-release:HOME_URL="http://www.ubuntu.com/"
/etc/os-release:SUPPORT_URL="http://help.ubuntu.com/"
/etc/os-release:BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
Linux Version :
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.5 LTS"
NAME="Ubuntu"
VERSION="14.04.5 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.5 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
/etc/issue:Ubuntu 14.04.5 LTS \n \l
/etc/issue.net:Ubuntu 14.04.5 LTS
4.4.0-53-generic
------------------------
Kernel Version :
------------------------
Linux version 4.4.0-53-generic (buildd@lgw01-18) (gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) ) #74~14.04.1-Ubuntu SMP Fri Dec 2 03:43:31 UTC 2016

설치한 패키지는

usr/bin 에 liunxversion 에 설치가 됩니다.

ls -al /usr/bin | grep linuxversion
-rwxr-xr-x  1 root   root        306 Dec 13 11:11 linuxversion



11 삭제
삭제는  dpkg 명령으로 삭제합니다.

dpkg -r linuxversion



2016년 12월 11일 일요일

[R] 처음으로 해보는 R(1)

R을 해보려고 한다.
검색을 해보니 https://www.datacamp.com/home 를 추천해준다.
추천해준데로 따라해 보려고 한다.
가입을 하고 처음으로 해보는 R을 따라 해보겠다.
웹에서 따라하라는데로 다 따라하면 될듯.

1. How it works


첫코스는 주석과 더하기를 가지고 어떻게 사용하는지 설명을 하고있다.
우측에 에디터창이 나오고 왼쪽에 설명이 나온다. 하라는데로 내용을 입력하고 Summit 을 누르니 다음으로 넘어간다.
script.R
# Calculate 3 + 4
3 + 4
# Calculate 6 + 12
6 + 12

Result
> # Calculate 3 + 4
> 3 + 4
[1] 7
>
> # Calculate 6 + 12
> 6+ 12
[1] 18
>

2. Arithmetic with R

  • Addition: +
  • Subtraction: -
  • Multiplication: *
  • Division: /
  • Exponentiation: ^
  • Modulo: %%
R에서 제공되는 산술연산을 해보는것 같다. 제공하는것은 위와 같은것들으 제공한다.
제곱(Exponentiation) 예제와 나머지 예제를 통해 연산어떤 연산들이 있는지 보여주는것 같다. 또 하라는데로 하니 통과
script.R
# An addition
5 + 5
# A subtraction
5 - 5
# A multiplication
3 * 5
# A division
(5 + 5) / 2
# Exponentiation
2 ^ 5
# Modulo
28 %% 6
Result
> # An addition
> 5 + 5
[1] 10
>
> # A subtraction
> 5 - 5
[1] 0
>
> # A multiplication
> 3 * 5
[1] 15
>
> # A division
> (5 + 5) / 2
[1] 5
>
> # Exponentiation
> 2 ^ 5
[1] 32
> # Modulo
> 28 %% 6
[1] 4
>

3.Variable assignment

다음으로 변수할당을 어떻게 하는지 해보았다.
변수할당은 변수명을 지정해주고 <- 식으로 지정해주면된다.
my_var <- 4
결과를 보려면 변수명을 입력해주면된다.

# Assign the value 42 to x
x <- 42
# Print out the value of the variable x
x
Result
> # Assign the value 42 to x
> x <- 42
>
> # Print out the value of the variable x
> x
[1] 42
>
하라는데로 42를 입력해주면 통과