Computer >> 컴퓨터 >  >> 프로그래밍 >> Bash 프로그래밍

Bash 프로그래밍

  1. 내가 Xonsh를 사랑하는 이유 – 파이썬으로 만나는 새로운 셸

    셸 언어의 한계 셸 언어는 대화형(interactive) 작업에 매우 유용합니다. 하지만 이러한 최적화는 프로그래밍 언어로서의 활용성과 상충되는 경우가 많아, 실제로 셸 스크립트를 작성하다 보면 그 한계를 자주 느끼게 됩니다. 그렇다면 여러분의 셸이 더 확장성 있는 프로그래밍 언어까지 이해할 수 있다면 어떨까요? 예를 들어, 파이썬(Python)처럼요? 그 해답이 바로 Xonsh입니다. Xonsh 설치와 첫 만남 Xonsh 설치는 생각보다 간단합니다. 가상 환경을 하나 생성한 뒤, pip install xonsh[ptk,linux]

  2. Bash 제어 연산자(&&, ||)를 활용한 명령어 조합과 흐름 제어 완벽 가이드

    명령줄에서 여러 명령을 한 줄로 이어서 실행하는 것과 같은 간단한 복합 명령은 매우 자주 사용됩니다. 이러한 명령들은 세미콜론(;)으로 구분되며, 세미콜론은 명령의 끝을 정의합니다. 한 줄에 간단한 셸 명령 시리즈를 만들려면 다음과 같이 각 명령을 세미콜론으로 구분하기만 하면 됩니다. command1 ; command2 ; command3 ; command4 ; 마지막 세미콜론은 생략해도 됩니다. Enter 키를 누르는 것이 마지막 명령의 끝을 의미하기 때문입니다. 다만 일관성을 위해 붙여도 전혀 문제되지 않습니다. 오류가 발생하면

  3. 리눅스 Bash 프롬프트로 겨울 분위기 내기

    터미널에 겨울 정취를 더해보세요리눅스 명령줄 장난감 어드벤트 캘린더의 또 다른 에피소드로 다시 찾아왔습니다. 이 시리즈를 처음 방문하셨다면 명령줄 장난감이 무엇인지 궁금하실 수 있습니다. 사실 그 범위는 꽤 넓습니다. 터미널에서 즐길 수 있는 재미있는 요소라면 무엇이든 해당되며, 특히 연말연시 분위기와 어울리는 것이라면 가산점을 드립니다.이전에 이미 접해본 항목일 수도 있고, 처음 보는 것일 수도 있습니다. 어느 쪽이든 즐겁게 감상하시길 바랍니다.오늘 소개할 장난감은 아주 간단합니다. 바로 여러분의 Bash 프롬프트입니다. Bash

  4. Bash용 OpenGL 바인딩: 셸 스크립트로 3D 그래픽을 구동하다

    Perl 5의 설계와 글루 언어(glue language)로서의 적합성을 다룬 지난 글에서, 저는 예전에 Bash용 OpenGL 바인딩을 작성했다고 언급했습니다. 증거 없이 하기에는 다소 믿기 힘든 말이었기에, 하드 드라이브의 먼지 쌓인 구석에서 프로젝트를 다시 꺼내고, 코드를 손보고, 폰트 지원을 개선하고, 문서를 작성해 제 사이트와 GitHub에 공개했습니다. 직접 체험하려면 Bash와 OpenGL을 모두 지원하는 시스템이 필요하지만, 미리 준비한 영상도 있습니다.충격적인 고백그럼 이제 고백하겠습니다. My DeLorean ru

  5. 당신은 아직 Bash를 모른다: Bash 배열 완벽 가이드

    소프트웨어 엔지니어들은 개발 과정에서 명령줄을 매일 사용하지만, 배열은 명령줄의 여러 기능 중에서도 상대적으로 잘 알려지지 않은 기능에 속합니다(정규식 연산자 =~만큼 생소하지는 않지만요). 하지만 낯선 문법과 어색한 표기법을 감수할 만한 가치가 있습니다. Bash 배열은 생각보다 훨씬 강력한 도구입니다. 잠깐, 왜 굳이 Bash 배열일까? Bash에 관해 글을 쓰는 일은 쉽지 않습니다. 문법의 사소한 특이점만 나열하는 설명서 수준으로 전락하기 십상이기 때문입니다. 하지만 걱정하지 마세요. 이 글의 목적은 여러분이 직접 매뉴얼(RT

  6. 명령줄에서 매일 활용하는 Bash 실전 팁 총정리

    Bash는 수많은 Linux 및 Unix 계열 시스템의 기본 셸로 자리 잡고 있으며, 그 안에는 잘 알려지지 않은 다양한 기능이 숨어 있습니다. 그래서 무엇을 소개할지 고르기가 쉽지 않았지만, 결국 일상적인 작업을 더 편하게 만들어 주는 Bash 팁에 초점을 맞추기로 했습니다.컨설턴트로 일하다 보면 다양한 환경과 업무 방식을 접하게 됩니다. 그 경험을 바탕으로 팁을 네 가지 큰 범주로 정리했습니다. 터미널과 라인 조작, 탐색과 파일 관리, 히스토리 활용, 유용한 명령어입니다. 물론 이 분류는 어디까지나 편의상 나눈 것일 뿐이며, 여

  7. 리눅스 터미널에서 Flatpak 앱 손쉽게 실행하는 방법

    Flatpak 애플리케이션 배포 모델은 개발자가 새롭고 쉬운 방식으로 리눅스를 지원할 수 있게 해주고, 사용자 역시 자신이 어떤 리눅스 배포판을 쓰는지 신경 쓰지 않고도 다양한 애플리케이션을 설치할 수 있도록 도와줍니다. 필자의 경우 Fedora Silverblue 시스템에서는 Flatpak이 기본 패키지 설치 방식이며, Silverblue의 모든 데스크톱 애플리케이션과 Slackware에서 즐겨 쓰는 여러 앱들도 Flatpak으로 운영하고 있습니다. 다만 몇 가지 상황에서 Flatpak을 다소 불편하게 만드는 요소가 있는데, 바로

  8. Bash로 설정 파일 파싱하기: 소싱(Source) 기법 활용 가이드

    프로그램의 설정을 코드와 분리해 관리하는 것은 매우 중요합니다. 이렇게 하면 프로그래머가 아닌 사용자도 코드를 수정하지 않고 설정을 변경할 수 있기 때문입니다. 컴파일된 바이너리 실행 파일의 경우, 소스 파일에 접근할 수 있다 해도(오픈소스라면 가능) 프로그래밍 지식이 없다면 수정이 사실상 불가능합니다. 그런 능력을 갖춘 사람은 많지 않으며, 대부분 배우고 싶어하지도 않습니다.반면 Bash 같은 셸 언어는 스크립트가 바이너리로 컴파일되지 않기 때문에 정의상 소스 코드에 접근할 수 있습니다. 하지만 그렇다고 해서 비전문가가 셸 스크립

  9. Bash 셸 스크립트에 옵션 추가하는 방법

    터미널 명령어에는 대개 옵션(option) 또는 스위치(switch)가 포함되어 있으며, 이를 활용하면 명령어의 동작 방식을 원하는 대로 조정할 수 있습니다. 옵션은 POSIX 명령줄 인터페이스 사양에도 포함되어 있고, 초기 UNIX 애플리케이션부터 이어져 온 오랜 관습이기도 합니다. 따라서 자신만의 명령어를 만드는 Bash 스크립트에 옵션을 구현하는 방법을 알아두면 큰 도움이 됩니다.대부분의 프로그래밍 언어와 마찬가지로 Bash에서도 옵션을 파싱하는 방법은 여러 가지입니다. 지금까지도 제가 가장 선호하는 방식은 Patrick Vo

  10. Bash 스크립트 하나로 스크린샷 이미지 처리 자동화하기

    글쓰기는 단어만 다루는 작업이 아닙니다. 글쓴이는 이미지도 함께 다뤄야 하는 경우가 많습니다. 특히 기술 문서 작성에서는 기술과 프로세스를 전달하기 위해 수많은 스크린샷을 활용하게 됩니다. 그런데 게시 플랫폼마다 이미지 형식이나 파일 크기 등 요구 사항이 다를 수 있습니다. IT 컨설턴트이자 시스템 엔지니어로 일하면서 저는 고객에게 전달할 기술 문서를 수없이 작성해 왔습니다. 대개 Microsoft Word(.doc) 형식이 요구되었죠. 문서는 내용이 추가될수록 빠르게 방대해집니다. 초창기에는 스크린샷이 비트맵(.bmp)으로 저장되

  11. Jekyll 설정 파일을 동적으로 생성하고 활용하는 방법

    Jekyll과 같은 정적 사이트 생성기는 _config.yml 파일을 사용해 설정을 관리합니다. 이 파일의 설정은 모두 Jekyll 전용이지만, 자신만의 변수를 정의하고 웹사이트 전체에서 활용할 수도 있습니다. 이 글에서는 Jekyll 설정 파일을 동적으로 생성했을 때 얻을 수 있는 장점들을 소개하겠습니다.로컬 노트북에서 Jekyll 웹사이트를 테스트할 때 저는 다음 명령어를 사용합니다:bundle exec jekyll serve --incremental --config _config.yml여러 설정 파일 결합하기로컬 테스트 중에는

  12. Linux에서 Vim을 기본 편집기로 구성하는 방법

    필자는 약 25년간 리눅스를 사용해 왔고, 그 이전에는 몇 년간 유닉스를 사용했습니다. 그동안 일상적으로 사용하는 도구들에 대한 나름의 선호가 생겼는데, 그중 가장 중요한 도구가 바로 Vim 편집기입니다.1990년대 초 솔라리스(Solaris)를 배우면서 Vi를 처음 접했습니다. 당시 Vi는 어떤 시스템에서도 항상 사용할 수 있다는 말을 듣고 시작했는데, 실제 경험상 그 말이 사실이었습니다. 다른 편집기들도 사용해 보았지만 역시 Vim이 가장 잘 맞았습니다. 그만큼 Vim을 많이 사용하다 보니 다른 편집기를 쓸 때도 무의식적으로 V

  13. 리눅스 tee 명령어 완벽 가이드 – 셸 출력 분할 및 저장 방법 [예제 포함]

    리눅스 셸(명령줄)에서 tee 명령은 애플리케이션의 출력을 분할하여 파일과 STDOUT(콘솔 또는 다른 애플리케이션) 양쪽으로 동시에 전송합니다. 이 글에서는 tee 명령의 사용법을 예제와 함께 자세히 살펴보겠습니다. tee라는 이름은 배관에 사용되는 T자형 분기관(T-splitter)에서 유래했습니다. 하나의 수원에서 물을 두 방향으로 나누어 보내는 파이프를 떠올리면 명령의 역할을 쉽게 이해할 수 있습니다. tee 명령 구문 tee는 단순한 목적과 간결한 구문을 가진 명령입니다: tee OPTIONS FILE 참고할 점은 다음과

  14. Linux에서 USB 드라이브 마운트하는 방법 – 초보자를 위한 단계별 가이드

    이 튜토리얼에서는 Linux에서 USB 메모리나 외장 하드 드라이브를 마운트하고 접근하는 방법을 알려드립니다.대부분의 데스크톱 Linux 배포판은 USB 드라이브를 자동으로 마운트하여 파일 탐색기에 표시해 주지만, 경량 배포판이나 서버용 배포판에는 이 기능이 포함되어 있지 않을 수 있습니다. 불필요하다고 판단하거나, 해당 배포판의 사용자가 이런 작업을 직접 관리하기를 선호하기 때문입니다.다행히 최신 Linux 배포판은 모두 USB 메모리와 외장 드라이브용 드라이버를 기본으로 제공하므로, 파일 시스템의 특정 위치에 마운트하기만 하면

  15. 리눅스 터미널에서 USB 드라이브 포맷하기: FAT32, NTFS, EXT4 파일 시스템 가이드

    이 글에서는 리눅스 명령줄(셸)을 사용해 USB 메모리나 외장 하드 드라이브를 FAT, NTFS, EXT 파일 시스템으로 포맷하는 방법을 단계별로 소개합니다. GUI 도구 없이 터미널만으로 빠르고 확실하게 작업할 수 있습니다. 1단계: 드라이브 연결하기 가장 먼저 USB 메모리 또는 외장 하드를 컴퓨터에 연결하고, 시스템이 이를 인식할 때까지 잠시 기다립니다. 2단계: 드라이브 확인하기 다음으로, fdisk 명령어에 목록 옵션(-l)을 붙여 시스템에 연결된 저장 장치를 확인합니다: sudo fdisk -l 참고: 대부분의 작업은 관

  16. 리눅스 명령줄과 Bash/Shell 스크립트로 이메일 보내는 방법 – 실전 가이드와 예제

    이 글에서는 리눅스 명령줄(셸)에서, 그리고 Bash/Shell 스크립트 안에서 이메일을 보내는 여러 가지 방법을 소개합니다. 굳이 명령줄에서 이메일을 보낼 필요가 있을까요? 일상적인 소통 목적이라면 아마 아닐 겁니다. 대부분의 사람들은 사용자 인터페이스가 잘 갖춰진 메일 클라이언트를 통해 서로 메시지를 주고받으니까요. 하지만 특정 작업이 완료되었거나 어떤 이벤트가 발생했을 때 컴퓨터가 자동으로 알림 메일을 보내도록 하고 싶다면 이야기가 달라집니다. 이런 종류의 이메일 알림은 디스크 공간 부족 경고, 오류 발생 통보, 정전 알림 등

  17. Linux watch 명령어 사용법 완벽 가이드 – 실전 예제로 배우기

    Linux의 watch 명령어는 단 하나의 기능을 수행합니다. 지정한 명령어를 반복 실행하고 그 결과를 계속 출력하여 변화를 실시간으로 모니터링할 수 있게 해주는 것입니다. 이 글에서는 watch 명령어의 기본 문법부터 다양한 옵션과 실전 활용 예제까지 자세히 알아보겠습니다. watch 명령어 기본 문법 watch 명령어의 기본 문법은 다음과 같습니다. watch OPTIONS COMMAND 각 구성 요소는 아래와 같습니다. OPTIONS(옵션): 아래 표에 정리된 옵션 목록으로, watch 명령어의 기본 동작 방식을 변경할 수

  18. Linux locate 명령어 사용법 – 파일 검색 완벽 가이드(예제 포함)

    리눅스 파일 검색 도구 상자에 또 하나의 유용한 명령어를 추가해 보겠습니다. 바로 locate 명령어입니다. locate 명령어는 이름을 기준으로 파일과 폴더를 찾기 위해 특별히 만들어진 도구입니다. 사용법이 간단하고 패턴(pattern)을 이용해 파일을 검색할 수 있어, 특정 확장자를 가진 파일이나 특정 유형의 파일을 찾을 때 특히 유용합니다. locate 설치하기 시스템에 따라 locate가 기본적으로 설치되어 있지 않을 수 있습니다. Debian/Ubuntu 기반 배포판에서는 다음 명령어로 설치합니다: sudo apt inst

  19. 리눅스 clear 명령어로 터미널·셸 화면 깨끗하게 지우는 방법

    이 글에서는 리눅스 clear 명령어를 사용해 터미널 화면을 지우는 방법을 소개합니다. 아주 빠르고 간단하니 부담 없이 따라 해 보세요. 터미널·셸 화면을 지워야 하는 이유 리눅스 터미널에서 여러 명령어를 실행하다 보면 이전 출력 결과와 명령어들이 쌓여서 화면이 점점 어수선해집니다. 이전 내용을 모두 치우고 새롭게 작업을 시작하고 싶다면 clear 명령어가 딱 좋은 해결책입니다. clear 명령어 구문 clear 명령어의 기본 구문은 다음과 같습니다. clear 정말 단순하죠? 동작을 조절할 수 있는 옵션이 몇 가지 있지만, 일반적

  20. 리눅스 man 명령어 완벽 가이드 – 매뉴얼 페이지 사용법과 실전 예시

    이 글에서는 리눅스를 비롯한 유닉스 계열 운영체제에서 man 명령어의 용도와 사용 방법을 자세히 설명합니다. 리눅스는 핵심 운영체제인 리눅스 커널과, 여기에 기능을 추가해 주는 다양한 소프트웨어 패키지들로 구성된 모듈화가 잘 되어 있는 운영체제입니다. 이러한 패키지들은 대부분 개별적으로 관리되기 때문에, 시스템마다 설치된 패키지 구성이 서로 다릅니다. 예를 들어 그래픽 디자이너라면 드로잉 도구를 설치하고, 소설을 집필하는 사람이라면 워드 프로세서를 설치하는 식입니다. 모든 시스템이 동일하지 않기 때문에 각 패키지는 자체 문서를 제공

Total 306 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:9/16  20-컴퓨터/Page Goto:1 3 4 5 6 7 8 9 10 11 12 13 14 15