[Linux] Shell Script(쉘 스크립트) 프로그램 및 패키지 설치 여부 확인

2022. 12. 8. 17:28·Server/Linux
728x90
반응형

우분투 환경에서 시도하였지만.. 리눅스도 동일하다.

 

 

which 명령어를 활용하여 프로그램 위치를 확인하였는데

$ which inotifywait # 없으면

$ which inotifywait # 있으면
/usr/bin/inotify-tools

 

 

해당 프로그램을 which 명령어로 찾았을 때, 없으면 리턴되는 값이 없고...

설치되어있다면 설치경로가 반환된다.

 

 

 

예시로 코드 하나를 보면,

test.sh

 

 

원본코드
#!/bin/bash

if which inotifywait >/dev/null; then
	echo "inotify-tools already installed!!!"
else
	apt-get install -y inotify-tools
fi

 

위 코드는 inotify-tools 패키지에 속해 있는 inotifywait 프로그램인데 파일 변동 이벤트를 감지하는 프로그램인데...

해당 프로그램의 설치 여부를 확인할 수 있는 소스이다.

inotifywait는 inotify-tools가 설치되어있어야만 있을 수 있는 프로그램인데.

 

 

그래서 설치되어있으면..

"inotify-tools already installed!!!" 문구가 보여지고

 

 

그게 아니라면, inotify-tools가 설치될 것이다.

 

728x90
반응형

'Server > Linux' 카테고리의 다른 글

[nginx] autoindex로 디렉토리 리스팅 하였을 때 cors 에러  (0) 2023.04.10
[Linux] expect를 이용하여 쉘스크립트를 실행시켜 다른 서버 원격 접속하여 명령어 날리기  (0) 2022.11.30
[Linux] 리눅스 타임존(TimeZone, TZ) 한국 표준시(KST)로 변경하기  (0) 2022.11.29
[SSL] Oracle linux server에서 let's encrypt로 nginx에 SSL 적용하기 (인증서 자동 갱신 포함)  (0) 2022.06.14
[linux] nginx 사용시 proxy_pass 연결 안되는 경우 해결법  (0) 2022.03.30
'Server/Linux' 카테고리의 다른 글
  • [nginx] autoindex로 디렉토리 리스팅 하였을 때 cors 에러
  • [Linux] expect를 이용하여 쉘스크립트를 실행시켜 다른 서버 원격 접속하여 명령어 날리기
  • [Linux] 리눅스 타임존(TimeZone, TZ) 한국 표준시(KST)로 변경하기
  • [SSL] Oracle linux server에서 let's encrypt로 nginx에 SSL 적용하기 (인증서 자동 갱신 포함)
밍글링글링
밍글링글링
mingling - 밍글링, 밍글밍글링. 코드와 어우러지다. IT/ 프로그래밍/소스
    반응형
    250x250
  • 밍글링글링
    mingling
    밍글링글링
  • 전체
    오늘
    어제
    • 밍글링글링 (463)
      • Flutter (2)
      • 일상생활 (8)
        • 리뷰 (1)
        • 생활정보 (4)
        • 맛집 (0)
        • 여행 (0)
        • 모든정보 (3)
      • JAVA (126)
        • 개념 (6)
        • 예제 (115)
        • Exception (2)
      • C (1)
        • C (1)
        • C++ (0)
        • C# (0)
      • JS (29)
        • JavaScript (18)
        • JQuery (5)
        • AJax (0)
        • NODE.JS (6)
        • Angular.JS 2.0 (0)
      • WEB (87)
        • HTML (6)
        • CSS (61)
        • JSP (20)
        • JSTL (0)
      • FrameWork (8)
        • Spring (8)
        • BootStrap (0)
        • MyBATIS (0)
        • JUnit (0)
      • 외부 라이브러리 (5)
      • 공유 소스 관리 (5)
        • Git (5)
        • SVN (0)
      • 빅데이터 프로그래밍 (37)
        • Python (37)
        • R Programming (0)
      • DB (7)
        • ORACLE (0)
        • MySql (6)
      • Development Tools (7)
        • StarUML (0)
        • eXERD (0)
        • Eclipse (4)
      • SKILL (6)
        • Migration (0)
        • Security (6)
      • MicroSoft (0)
        • Excel (0)
        • Word (0)
      • Android (0)
      • Server (21)
        • Ubuntu (5)
        • Linux (15)
      • IOS (0)
      • XML (0)
      • 미디어 (0)
      • 공지사항 (3)
      • NETWORK (1)
      • 게임 (4)
        • 피파 (1)
        • 리니지M (0)
        • 배틀그라운드 (1)
        • 듀랑고 (2)
      • 세상 이슈 (6)
      • 일렉트론 (0)
      • 대회 소식 (4)
      • 업무 (2)
      • Express, Vue (6)
      • docker (11)
      • svelte (3)
      • 블록체인 (1)
      • IT (66)
      • Rust (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Rust lang
    오류
    클론코딩
    css transition
    jsp include
    Node
    nginx
    리눅스 설치
    css float
    AI 반도체
    rust linux
    브라우저 자동화
    jsp parameter
    자바 exception
    docker
    러스트
    ubuntu
    css table
    API 설계
    css perspective
    ssl 인증서 발급
    자바 클래스
    vue cli
    제미나이
    React Compiler
    servlet class
    java casting
    nginx ssl 설정
    에디터 팁
    proxy pass
    vscode
    프런트엔드
    vue 설치
    SSL 인증서
    AI 코딩 에이전트
    gitlab 설치
    css tb
    자바 생성자
    VS Code 팁
    nginx ssl 적용
    spring java
    자바 for문
    Java Array
    svelte
    mysql db
    lang rust
    티스토리 자동화
    자바 배열
    Extension Bisect
    자바 객체 지향
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
밍글링글링
[Linux] Shell Script(쉘 스크립트) 프로그램 및 패키지 설치 여부 확인
상단으로

티스토리툴바