BASH ① 새 삼촌 의 Linux 개인 요리 인식 및 학습
BASH 를 알다
케이스 프로그램
BASH 는 사용자 와 핵심 (kernel) 사이 에 의사 소통 을 구축 하여 적합 한 사용자 가 운영 체제 의 각종 기능 을 호출 하도록 하 는 케이스 프로그램 입 니 다.케이스 프로그램의 기능 은 운영 체제 의 인 터 페 이 스 를 제공 하 는 것 일 뿐 입 니 다. 예 를 들 어 케이스 프로그램 bash 를 통 해 많은 명령 을 호출 할 수 있 습 니 다. man, chmod, chown, vi, fdisk, mkfs 등 이 명령 들 은 모두 독립 된 응용 프로그램 이지 만 우 리 는 케이스 프로그램 (명령 행 인터페이스) 을 통 해 이 프로그램 들 을 조작 하여 핵심 을 호출 하여 필요 한 작업 을 실행 할 수 있 습 니 다.이것 이 바로 케이스 프로그램 이다.
응용 프로그램의 인터페이스 와 같은 프로그램 을 조작 할 수 있다 면 모두 케이스 프로그램 이 라 고 할 수 있다.협의 적 으로 명령 행 의 소프트웨어 (BASH 등 포함) 를 말 하 는데 넓 은 의미 의 케이스 프로그램 은 그래 픽 인터페이스 의 소프트웨어 를 포함한다.
다양한 셸
Linux 에는 여러 종류의 셸 이 있 습 니 다.
/bin
디 렉 터 리 에 저장 되 어 있 지만 Linux 는 기본적으로 BASH 를 사용 합 니 다.Bash 셸 기능
BASH 는 sh 와 서로 어 울 리 고 사용자 의 수요 에 따라 강 화 했 습 니 다. bash 는 주로 다음 과 같은 장점 이 있 습 니 다.
~/.bash_history
에 저 장 됩 니 다.해커 침입 조심!ls -lha
이 명령 을 lall
사용자 정의 명령 으로 바 꿀 수 있 습 니 다.명령 줄 에 alias 를 입력 하면 현재 명령 별명 중 어떤 것 만 쓸 수 있 습 니 다!이렇게 설정 할 수 있 습 니 다: alia lm='ls -lha'
.ls -l /usr/bin/X*
사용 하면 알 수 있 습 니 다. type [-tpa] name
인자 가 추가 되 지 않 았 을 때 type 은 name 시 외부 명령 인지 bash 의 내부 명령 인지 보 여 줍 니 다. 관련 옵션:명령 의 줄 바 꾸 기 입력 과 빠 른 삭제
명령 이 너무 길 면 역 슬 래 쉬 + 리 턴 을 사용 하여 줄 을 바 꾸 어 계속 입력 할 수 있 습 니 다.
\
은 점프 문자 로 다음 버튼 을 뛰 어 넘 을 수 있 습 니 다. 이 를 원리 로 합 니 다.빠 른 삭제 명령 과 이동 커서:
변수
변 수 는 설정 되 어 있 거나 보 존 된 데 이 터 를 문자 나 기호 등 으로 대체 하 는 것 입 니 다.
echo, unset, 변수 설정 규칙
변수 내용 보기
직접 사용
echo ${PATH}
또는 echo $PATH
하면 변수의 내용 을 볼 수 있다.변수 설정
'name = content (내용) 를 사용 하면 name 이라는 변 수 를 만 들 고 내용 을 부여 할 수 있 습 니 다.
변수 설정 규칙
=
번 으로 연결 합 니 다. var="lang is $LANG"
, echo $var 는 'lang is zh CN UTF - 8' \
를 사용 하여 특수 기호 (예 를 들 어 리 턴, $, 공백 문자, '등) 를 일반 문자 로 바 꿀 수 있 습 니 다. "$name"
또는 ${name}
누적 을 사용 할 수 있다. 예 를 들 어 PATH="$PATH":/home/bin
또는 PATH${PATH}:/home/bin
. unset
이다. 예 를 들 어 unset name
export name
변 수 를 환경 변수 로 바 꿀 수 있 습 니 다. bash 서브루틴 에서 사용 할 수 있 습 니 다. 부모 프로그램의 사용자 정의 변 수 는 서브루틴 에서 사용 할 수 없습니다.현재 시스템 의 핵심 버 전 을 가 져 올 수 있 습 니 다
uname -r
.환경 변수의 기능
set
set 를 사용 하여 모든 변수 (환경 변수 와 사용자 정의 변수 포함) 를 관찰 할 수 있 습 니 다. 매개 변수 설명:
PS1 프롬프트 문자 설정
PS1='[\u@\h:\w \t#\#]\$
시간 과 명령 한 횟수 를 표시 할 수 있 습 니 다.사실은 $는 이 셸 의 PID 에 관 한 것 입 니 다. 이렇게 볼 수 있 습 니 다
echo $$
.? 번 (이전 실행 명령 에 대한 리 턴 값): 성공 적 으로 실행 하면 0 으로 되 돌아 갑 니 다. 오 류 는 0 이 아 닙 니 다. 예 를 들 어 echo $?
.OSTYPE,HOSTTYPE,MACHTYPE
호스트 하드웨어 와 핵심 등급.
export
사용자 정의 변 수 를 환경 변수 로 변환 합 니 다.
env
와 어떤 차이 가 있 습 니까? env 는 환경 변 수 를 보 여 주 는 것 일 뿐 set 는 환경 변 수 를 인쇄 할 뿐만 아니 라 사용자 정의 변 수 를 보 여 줍 니 다.서브루틴 은 부모 프로그램의 환경 변수 만 계승 하고 부모 프로그램의 사용자 정의 변 수 를 계승 하지 않 습 니 다. 다음 명령 을 사용 하여 사용자 정의 변 수 를 환경 변수 로 변환 합 니 다.
export name
locale: 결 과 를 나타 내 는 어족 변수 에 영향 을 줍 니 다.직접 사용
locale -a
하면 시스템 의 모든 언어 계 를 볼 수 있 고 사용 locale
하면 매우 구체 적 인 설정 을 볼 수 있 습 니 다. 이 설정 파일 은 /etc/locale/conf
에 있 고 모든 언어 계 파일 은 /usr/lib/locale
에 있 습 니 다.LANG 나 LC ALL 을 설정 하면 다른 어족 변 수 는 이 두 변수 로 대 체 됩 니 다.
계속............................................................
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.