기본 콘텐츠로 건너뛰기

우분투[ubuntu] 런처(윈도우 메뉴)에 아이콘 추가 하기.

안녕하세요.  KANO 입니다.

오늘은 간단하게 우분투 바로가기 아이콘 생성을 해 볼 건데요.
우분투 혹은 리눅스 사용자들은 프로그램을 설치 하지 않고, 프로그램을 실행해야 하는 프로그램들이 있습니다 .
예) 이클립스. 등등..
이것을 조금 편하게 할 수 없을까? 생각하다가 저도 만들어 보는 시간을 갖으면서 글을 적어 봅니다.


제가 등록할 프로그램은 Pycharm 2017.03 버전인데요.
우분투에서 우분투 소프트웨어 관리자에서 추가가 가능 하긴 합니다..( _ _ )

 
현재 런쳐 메뉴의 프로그램에는 Pycharm이 보이지 않는데요.
아이콘 등록을 위하여 터미널을 열어서 명령어로 실행할 수 있게 만들어 봅시다


 sudo ln -s  실행 파일 경로,  symlink 경로 입니다. 
실행파일 경로만 바꿔 주시면  될 것 같네요.. ㅎㅎ
그럼 한번 실행을 해보도록 하죠~



정상적으로 실행이 되네요.  그럼 이제 아이콘을 생성해보도록 합니다.
아이콘 생성 방법은 2가지 인데요
우선 첫번째 방법을 이용해 보도록 하죠.
.desktop 파일을 생성 하는 방법입니다.


런처 아이콘 경로에  만들려는 이름.desktop 을 생성합니다.
저는 pycharm 이라서 Pycharm.desktop 이라고 vi 편집기를 이용하여 파일을 생성 할께요.


vi 편집기가 열리면 다음과 같이 적어 주세요.
 [Desktop Entry]
Version =x.y    #프로그램 버전 (안 적어도 무방합니다.)
Name=프로그램 이름
Comment=프로그램 설명
Exec=프로그램 실행 명령어 #저는 pycharm.sh 를 입력했습니다.
Icon=아이콘 경로
Terminal=false #터미널 실행 여부 입니다. (True : 실행, False:실행안함)
Type=Application #실행 형식입니다. 이건 수정하지 말아주세요~
Categories=   #카테고리 입니다. 저는 Development, pycharm, python 을 입력했는데요.
                         # 귀찬으시면 그냥 Application; Utility 등등 적어 주시면 되요.

Esc 키를 눌러서 수정모드를 해제 하고, :wq! 를 하여 vi  편집기를 나오도록 합니다.
이제 파일에 권한을 줘볼까용?

sudo chmod 777 생성파일.desktop 

을 입력합니다. 777 권한은 모든 권한을 말합니다. 저는 귀찬아서 777 을 했구요 755 도 됩니다.
 그럼 확인을 해 볼까요???



/usr/share/applications 폴더 밑에 Python 이라고 잘 되어 있네요 ㅎㅎ
그럼 런쳐 메뉴도 확인을 해볼까요?

 런처 메뉴에도 정상적으로 등록 되었네요.

그럼 두번째 방법을 알아 볼까요?

우선 gnome-panel 을 설치 합니다.


설치가 완료가 되면,

 gnome-desktop-item-edit /usr/share/applications --create-new 

을 입력합니다. 그럼 실행 아이콘 만들기가 실행 될덴테요.


이름에 파일이름을 적어 줍니다.
명령어는 처음에  터미널에서 바로 실행 가능하게 만든  symlink를 입력합니다.
아이콘 그림도 클릭하여 그림도 선택해 주고.



OK,  확인 버튼을 눌러 줘요~
(권한이 없다라고 뜰때는  sudo  gnome-desktop-item-edit /usr/share/applications --create-new  )



정상적으로 추가 되었으니 확인을 배봅시다! 정상적으로 applications 에 등록이 되었는걸 확인 했으니 런쳐에도 가볼까요?


역시 정상적으로 추가가 되었네요
이상이었습니다.
혹 삭제 하고 싶으실 경우에는 아시죵..;ㅋㅋ
저는 sudo rm 으로 삭제 합니다..;ㅋㅋ


댓글

  1. 초반부 심볼릭 링크 연결하는 부분에서 sudo in -s 가 아니라 sudo l(알파벳 엘)n -s 입니다!

    답글삭제
    답글
    1. 감사합니다. 오타수정 하였습니다! 지적해주셔서 감사해요~

      삭제
    2. 이미지 수정 안됐어요

      삭제
  2. 그 외 사항 잘 따라했습니다 감사합니다:)

    답글삭제
  3. 본문글 보고 잘 따라하니까 아이콘이 예쁘게 잘 나왔네요.
    궁금한게 또있는데 뭐냐면 쉘창에서 보통 계정이름 나오고 ~$ 이렇게 표시되는데 어떻게 하면"-> ~$" 이런식으로 나오나요?

    답글삭제
  4. tool->create destop entry만 하면 위 작업 필요 없이 바로가기를 우분투에서 만들 수 있습니다.

    답글삭제
    답글
    1. 그런 방법도 있었다니.. ㅠㅠ 늦게 알게 되었습니다. 감사합니다!

      삭제
  5. 뭐지 나만 안 되나.. 런쳐에도 안 뜨고 그 밑에 거 설치해도 실행이 안 뜨는데

    답글삭제
  6. 덕분에 잘 따라했습니다! 감사합니다

    답글삭제
  7. 위처럼 아이콘생성해서 실행하면 [sudo] password for seme: 이렇게 뜨는데요.. password도 자동입력되게 못할까요? 감사합니다.

    답글삭제

댓글 쓰기

이 블로그의 인기 게시물

[linux] ubuntu 16.04 메뉴, 런처 없어짐.. (hide menu, luncha...)

우분투 사용을 하다가 보면 가끔 필요 없는 프로그램 을 삭제 해야 할 때 가 있다. ex) sudo apt-get remove --purge XXXXXXX 삭제를 하고 제부팅을 하면.. 하하하하하하~~!!! 메뉴 어디갔나요?;;;;ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 멘탈이 나갈거같네요..\ 우선 아는데로 쳐보기로 합니다.. sudo apt-get install ubuntu-desktop sudo apt-get install unity-control-center sudo apt-get install unity-control-center-signon sudo apt-get install gnome-control-center-unity sudo reboot 여기서 해결이 되나요??';  저는 안되서 구글링을... Enter the following commands:- Ctrl+Alt+F1 login there with username and password WARNING! THE FOLLOWING COMMAND WILL TERMINATE YOUR ACTIVE SESSION! try: sudo service lightdm restart If restarting lightdm doesn't fix the problem, install aptitude and then install unity : sudo apt-get install aptitude sudo apt-get update && sudo aptitude -f install && sudo aptitude dist-upgrade sudo aptitude install unity Read the outputs carefully. If you do have broken dependencies, aptitude will give you the "solution" of NOT installing u...

[심심] Oracle 초성검색 함수 만들기

 안녕하세요!  오랫만에 돌아온 카노 입니다. 오늘은 너무 심심해서 오라클(DB) 를 갖고 초성 찾기 함수를 만들어 볼 생각 입니다. 예) fn_korinitialkeyword('홍길동') return : ㅎㄱㄷ select * from 테이블 where fn_korinitialkeyword(직원명컬럼) like '%ㅎㄱㄷ%' 이런식으로 검색이 되도록 만들 꺼에요~ 함수 코드는  function fn_korinitialkeyword( str in varchar2) return varchar2 is    returnStr varchar2(100);     cnt number := 0;     tmpStr varchar2(10); begin        if str is null then       return '';       end if;              cnt := length(str);        for i in 1 .. cnt       loop         tmpStr := substr(str,i,1);                        returnStr := returnStr ||       case when tmpStr < 'ㄱ' then substr(tmpStr, 1, 1)             when ascii('ㄱ') <= ascii(tmpStr) and ascii(tmpStr) <=...