Linuxpia/리눅스 사용 팁 136

[리눅스 팁] 셸에서 명령어를 처리하는 과정

셸에서 명령어를 처리하는 과정 ls *.py 명령어가 리눅스 셸에서 어떻게 처리되는지 설명하기 전에, 해당 명령어의 기능을 간단히 요약하자면, 현재 디렉터리(directory) 내의 모든 Python 파일(확장자가 .py인 파일)을 나열하는 것입니다. 이 과정은 여러 단계를 거쳐 실행됩니다: 1. 명령어 입력 및 해석 사용자가 터미널에 ls *.py를 입력하고 엔터 키를 누르면, 셸은 이 명령어를 받아 처리하기 시작합니다. 여기서 ls는 'list'의 약자로, 파일 및 디렉터리 목록을 보여주는 명령어입니다. *.py는 와일드카드 패턴을 사용한 표현으로, 모든 .py 확장자를 가진 파일과 일치합니다. 2. 와일드카드 확장 셸은 명령어를 해석할 때 와일드카드(*)를 현재 디렉터리에 있는 파일 목록과 비교하여..

사용자와 리눅스 운영 체제 간의 인터페이스, 리눅스 셸

리눅스 셸 리눅스 셸(Linux shell)은 사용자와 리눅스 운영 체제 간의 인터페이스를 제공하는 프로그램입니다. 사용자가 명령어를 입력하면, 셸은 그 명령어를 해석하고 운영 체제가 이해할 수 있는 형태로 변환하여 실행합니다. 셸에는 여러 종류가 있으며, 각각 다른 특징과 기능을 가지고 있습니다. 주요 용어는 다음과 같습니다. bash(Bourne Again SHell): 가장 널리 사용되는 셸 중 하나로, GNU 프로젝트의 일환으로 개발되었습니다. bash는 Bourne 셸(sh)의 확장 버전이며, 사용하기 쉽고 강력한 프로그래밍 기능을 제공합니다. zsh(Z Shell): bash와 유사한 기능을 제공하지만, 사용자 사용성과 편의성에 중점을 둔 셸입니다. 테마와 플러그인 지원이 특징입니다. fish..

[리눅스 팁] 주피터 노트북에서 매직 명령어 사용 사례, '%sx'

주피터 노트북에서 매직 명령어 사용 사례, '%sx' %sx는 주피터 노트북의 매직 명령어 중 하나로, 운영체제의 쉘 명령을 실행하고 그 결과를 파이썬 변수에 저장할 수 있게 해 줍니다. 이 매직 명령어는 쉘 명령의 출력을 직접적으로 파이썬 리스트로 캡처하며, 이 리스트의 각 요소는 쉘 명령 출력의 한 줄을 나타냅니다. 이를 통해 쉘 명령의 출력을 파이썬 코드 내에서 직접 조작하고 분석하는 것이 가능해집니다. 사용법 %sx 뒤에 실행하고자 하는 쉘 명령을 작성합니다. 그 결과는 자동으로 파이썬 리스트 변수에 할당됩니다. 할당된 변수를 통해 쉘 명령의 출력에 접근하고, 이를 바탕으로 추가적인 데이터 처리나 분석을 진행할 수 있습니다. 예시 # 현재 디렉터리의 파일 리스트를 가져와서 Python 변수에 저장..

[리눅스 팁] 주피터 노트북에서 운영체제 명령 사용

주피터 노트북에서 운영체제 명령 사용 주피터 노트북(Jupyter Notebook)에서 운영체제(OS) 명령을 사용하는 것은 데이터 과학, 프로그래밍 작업을 수행하는 데 있어 매우 유용합니다. 주피터 노트북 내에서 직접 운영체제의 명령을 실행할 수 있으며, 이를 위한 주된 방법은 두 가지입니다: 셀 앞에 느낌표(!)를 사용하는 방법과 매직 명령어(Magic Commands)를 사용하는 방법입니다. 느낌표(!)를 사용하는 방법 주피터 노트북에서 셀 앞에 느낌표(!)를 붙여서 실행하고자 하는 운영체제 명령을 작성함으로써, 해당 명령을 직접 실행할 수 있습니다. 이 방법은 간단한 운영체제 명령을 실행할 때 매우 편리합니다. !ls # 현재 디렉터리(디렉토리)의 파일 리스트를 보여줍니다. !pwd # 현재 작업..

[리눅스 팁] 주피터 노트북에서 단축키

주피터 노트북에서 단축키 주피터 노트북(Jupyter Notebook)은 대화형 컴퓨팅 환경을 제공하는 웹 애플리케이션으로, 데이터 과학, 수치 시뮬레이션, 통계 모델링, 머신 러닝 프로젝트 등 다양한 분야에서 널리 사용됩니다. 효율적인 작업 수행을 위해 다음과 같은 주피터 노트북의 단축키를 알아두면 유용합니다. 단축키는 두 가지 모드에서 사용됩니다: 명령 모드(Command Mode)와 편집 모드(Edit Mode). 명령 모드는 셀을 관리할 때 사용되며, 편집 모드는 셀 내부의 텍스트를 편집할 때 사용됩니다. 명령 모드 (Command Mode) Enter: 선택한 셀을 편집 모드로 전환 Shift + Enter: 셀을 실행하고 다음 셀로 이동 Ctrl + Enter: 셀을 실행하고 현재 셀에 머무름..

[리눅스 팁] 마크다운 언어 2

마크다운 언어 2 Markdown은 다양한 서식 옵션을 제공하여 텍스트 문서에 시각적 요소와 구조를 추가할 수 있습니다. 인용문, 수평선, HTML 태그 삽입 등의 기능을 통해 문서의 가독성과 표현력을 높일 수 있습니다. 인용문 (Blockquotes) 인용문은 > 기호를 사용하여 생성합니다. 인용문 내에서 다른 Markdown 요소를 사용할 수도 있습니다. > 이것은 인용문입니다. > > > 이것은 중첩된 인용문입니다. > > 인용문 내에서 **볼드체**나 _이탤릭체_ 등의 Markdown 문법도 사용할 수 있습니다. 수평선 (Horizontal Rules) 수평선은 문서 내에서 내용의 구분을 위해 사용되며, ---, ***, 또는 ___을 사용하여 생성할 수 있습니다. --- *** ___ 이 코드들..

[리눅스 팁] 마크다운 언어 1

마크다운 언어 1 Markdown은 텍스트 기반 마크업 언어로, 웹상에서 쉽게 읽고 쓸 수 있는 문서를 만들기 위해 사용됩니다. 간단한 문법으로 HTML로의 변환이 가능하여, 블로그 글, 기술 문서, 메모 등 다양한 용도로 활용됩니다. 기본적인 Markdown 사용법을 소개합니다. 제목 (Headings) 제목은 # 기호를 사용하여 표시합니다. #의 개수가 많을수록 하위 제목을 의미합니다. # 제목 1 ## 제목 2 ### 제목 3 #### 제목 4 ##### 제목 5 ###### 제목 6 강조 (Emphasis) 텍스트를 강조하기 위해 볼드체와 이탤릭체를 사용할 수 있습니다. 볼드체: **볼드체** 또는 __볼드체__ 이탤릭체: *이탤릭체* 또는 _이탤릭체_ 목록 (Lists) 목록은 순서가 있는 목록..

[Conda] 아나콘다에서 새로운 가상 환경 만들기

아나콘다에서 새로운 가상 환경 만들기 Linux에서 Anaconda를 사용하여 새로운 가상 환경을 만드는 방법은 다음과 같습니다. 터미널을 열고, 새 가상 환경을 만들기 위해 다음과 같은 명령어를 입력합니다: conda create -n your_env_name python=x.x 여기서 your_env_name은 생성하려는 가상 환경의 이름을 의미하고, python=x.x는 설치하려는 Python의 버전을 의미합니다. 예를 들어, Python 3.8을 설치하고 싶다면 python=3.8로 지정합니다. 2. 생성된 가상 환경을 활성화하려면 다음 명령어를 사용합니다: conda activate your_env_name 이제 터미널 프롬프트 앞에 가상 환경의 이름이 나타나며, 이 환경 내에서 작업이 이루어집..

[Conda] 아나콘다 가상환경 리스트 출력

아나콘다 가상환경 리스트 출력 Linux 시스템에서 Anaconda를 사용하여 설치된 모든 가상 환경의 리스트를 확인하려면 터미널에서 다음 명령어를 사용하면 됩니다: conda env list 또는 conda info --envs 이 명령들은 현재 설치되어 있는 모든 Conda 가상 환경들의 목록을 보여줍니다. 출력된 리스트에서 현재 활성화된 환경 옆에는 별표(*)가 표시됩니다.

익숙해지면 어느 것보다 편한 편집기, vi

익숙해지면 어느 것보다 편한 편집기, vi vi 편집기는 UNIX와 유닉스 계열 시스템에서 널리 사용되는 텍스트 편집기입니다. 1976년에 빌 조이(Bill Joy)가 개발했으며, 그의 간결함과 효율적인 키보드 단축키를 통한 편집 기능 때문에 오랫동안 개발자와 시스템 관리자들 사이에서 인기를 끌어왔습니다. 명칭의 연원과 두 가지 모드 vi는 "visual interface"의 약자로 해석될 수 있으며, 원래는 ex 편집기의 시각적 모드로 시작되었습니다. 이 편집기는 모달(modal) 편집을 지원하는 것이 특징이며, 이는 사용자가 다른 모드 사이를 전환하면서 작업할 수 있음을 의미합니다. 주로 두 가지 모드가 있습니다: 명령 모드(Command Mode): 사용자가 텍스트를 삭제, 복사, 붙여넣기 하거나 ..