Dev
-
파일내 특정 키워드를 포함하는 모든 라인 삭제Dev/Linux 2019. 11. 13. 20:26
리눅스의 커맨드라인에서 특정 파일의 특정 키워드를 포함한 모든 라인을 동시에 삭제하고자 할 때, 구글링을 해보면 sed 및 awk 를 이용한 방법들이 있긴 하던데 동일 파일에 read/write 를 동시에 해야하기 때문에 안되는 경우가 많고 되더라도 플랫폼에 따라서 다른 옵션들을 사용해야하는 등의 번거로움이 있다. 그래서 내 경험상 아래의 방법이 가장 심플하고 깔끔한 듯. $ grep -v 'keyword' originalfile > tempfile && mv tempfile orignalfile
-
Address already in use - bind(2) (Errno::EADDRINUSE)Dev/Ruby On Rails 2019. 10. 23. 18:56
Rails 서버를 올렸다 내렸다 하다보면... Address already in use - bind(2) (Errno::EADDRINUSE) 위와 같은 에러가 나며 서버 시작이 안되는 경우가 있다. Rails 서버가 비정상적으로 종료되어 해당 포트를 정상적으로 닫지 못한 경우이다. 이럴땐 포트를 잡고 있는 프로세스를 찾아서 종료하면 되는데 아래와 같이 할 수 있다. $ lsof -wni tcp:3000 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME ruby 611 brkim 14u IPv4 1157726 0t0 TCP 127.0.0.1:hbci (LISTEN) ruby 611 brkim 15u IPv6 1157727 0t0 TCP [::1]:hbci (LIST..
-
rails controller 에 curl post 하는 방법Dev/Ruby On Rails 2019. 10. 7. 20:52
$ curl -d "friut[apple]=1&fruit[orange]=2&fruit[tomato]=3" -X POST http://itips.tistory.com/fruits 위와 같은 구조로 curl 명령을 이용하여 rails 서버에 POST request 를 보내면 Parameters: {"fruit"=>{"apple"=>"1", "orange"=>"2", "tomato"=>"3"}} 이와같이 rails 서버에서 parameters 를 받으며 params[:fruit][:apple], params[:fruit][:orange], params[:fruit][:tomato] 이러한 형식으로 해당 parameter 들을 읽어 올 수 있다.
-
Ruby On Rails 리눅스 상에 처음 설치하기Dev/Ruby On Rails 2019. 10. 5. 16:10
RVM 을 이용한 간편한 설치 https://rvm.io/rvm/install 1. 설치 패키지 검증을 위한 GPG 키 설치 $ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3D2BAF1CF37B13E2069D6956105BD0E739499BDB 2. RVM 설치 $ \curl -sSL https://get.rvm.io | bash -s stable --ruby $ source ~/.rvm/scripts/rvm - ~/.bashrc 에 추가하여 매번 실행하는 번거로움 제거 $ echo 'source ~/.rvm/scripts/rvm' >> ~/.bashrc $ ruby -v 3..
-
Git 간단한 사용법 - showDev/Git 2019. 8. 5. 20:17
커밋의 내용을 볼 때는 'show' 명령을 사용한다. 'show' 명령 뒤에 보통 commit 시 생성된 SHA 값을 넣어 해당 커밋의 내역을 살펴볼 수 있으며 그외에도 tags, blobs, tree 등의 내역을 확인할 때도 사용한다. $ git log commit 048c18c4473cde5d068c892933406775c6456690 (HEAD -> master) Author: I Tips Date: Mon Aug 5 21:07:19 2019 +1000 probably the last changes in the file 위와같은 로그가 있을 때 아래와 같이 변경내역을 확인한다. $ git show 048c18c4473cde5d068c892933406775c6456690 commit 048c18c44..
-
Git 간단한 사용법 - logDev/Git 2019. 7. 9. 11:38
작업한 내용을 커밋으로 계속 생성해 왔다. 그 내역들을 보려면 git log 명령을 사용한다. [~/test] (master) $ git log commit 5b72c2a661f4b09eaa7dd4fe8305633c474b1bc6 Author: I Tips Date: Wed Jul 3 14:33:30 2019 +1000 changes from branch_1 commit 102c053855e0fddbb993b684e44fec65f35ae505 Author: I Tips Date: Wed Jul 3 14:32:21 2019 +1000 third changes commit d18d8f6f53a684ca2bdce055ea6cf4566960f123 Author: I Tips Date: Mon Jul 1 09:0..
-
Git 간단한 사용법 - aliasDev/Git 2019. 7. 1. 08:14
리눅스의 커맨트 콘솔에서 ~/.alias 파일에 Alias(별칭)을 등록해 놓고 사용할 수 있듯이 Git 자체적으로 Alias 관리 기능을 제공한다. 우선 따라하기. 1. ~/.gitconfig 파일이 있는지 확인해보고 없으면 생성하기 [~]$ touch ~/.gitconfig [~]$ vi ~/.gitconfig # This is Git's per-user configuration file. [user] # Please adapt and uncomment the following lines: name = I Tips email = itips119@gmail.com 이전에 커밋을 수행한적이 있었다면 파일안에 [user] 섹션이 이미 존재할 수도 있다. 2. 어쨌든, 제일 아랫쪽에 [alias] 세션을 만..
-
Git 간단한 사용법 - fetchDev/Git 2019. 6. 28. 06:46
지금까지 Git 을 이용하여 로컬의 작업내용을 원격의 repository 에 보관하여 작업하는 방법을 알아보았다. 그런데 만약 멀티 유저환경이라면 그래서 누군가가 내가 마지막으로 보관했던 커밋이후에 신규커밋을 추가했다면 내 로컬 커밋들에 그 신규 커밋을 어떻게 반영해야할까? 이런 상황에 사용할 수 있는 명령이 git fetch 이다. fetch 명령은 타겟으로 지정한 리포지토리의 변경내역을 로컬로 가지고 와서 그 내역들을 HEAD라는 특수한 branch에 담는다. 이 정보를 이용해서 로컬의 작업내역들과 비교할 수 있고 만약 누군가가 생성한 신규 커밋들이 로컬에서 작업한 부분과 중복되는 부분이 있다면 이에 대한 정보를 제공해준다. 아래 예제를 참조 1. 현재 log 확인 * git ll 은 git log ..