찾다
Linux--Bash 및 Shell 설명Jul 18, 2017 am 09:31 AM
bashlinuxshell

1. 쉘이란? El 좁은 쉘은 기본 Linux 운영 창 bash 등을 포함하여 명령 열의 소프트웨어를 나타냅니다. 광범위하게 schelis에는 그래픽 인터페이스의 소프트웨어가 포함됩니다. 그래픽 인터페이스는 실제로 작업할 코어를 호출하기 위해 다양한 드라이버를 작동할 수 있기 때문입니다. 일하다 일하다 .

시스템의 합법적인 쉘은 /etc/shells 파일에 기록되어 있습니다.

2. Bash Shell의 기본 작동 기술

1. 이전 로그인 중에 실행된 명령 보기: vim ~/.bash_history

2. 명령 및 파일 완성 기능(Tab 키)
다음에 하나 명령 문자열의 첫 번째 단어는 명령 완성
탭입니다. 명령 문자열의 두 번째 단어는 파일 완성
3입니다. 명령 별칭 설정 기능: alias
alias lm= 'ls -al '
4. 프로그래밍된 스크립트(셸 스크립트)
5. 와일드카드
6. 줄바꿈 입력 + [enter]
7. 커서 앞 또는 뒤로 문자열 삭제 +k
8. 커서를 전체 명령 문자열의 앞/끝으로 이동합니다. [crtl] +a / [crtl]+e
9. 환경 변수 세트를 관찰하려면 env 및 내보내기를 사용하세요. 현재 bash 환경
10. 연속 명령에서는 두 가지 명령을 연속적으로 실행할 수 있습니다.
&& 첫 번째 명령에는 오류 메시지가 없어야 합니다.
  • || . 오류가 발생하면 두 번째 항목
  • 을 실행합니다. 11. 인코딩 문제: LANG 또는 LC_ALL 설정에 현재 언어가 나열됩니다.
12. 별칭의 원래 코드 보기: -a alias 명령 입력
13. 모든 키와 키 내용 나열: stty -a
14. 키 기능 설정: stty era ^h : set crtl + h 문자 삭제 backward
15. 핵심 버전 받기: echo $(uname -r)
3. Shell Script
개념:
Shell 스크립트는 Shell의 기능을 이용하여 작성된 프로그램입니다. 일반 텍스트 파일. 여기에 몇 가지 셸 구문과 지침을 작성하고 정규식, 파이프라인 명령, 데이터 흐름 리디렉션과 같은 기능을 사용하여 처리 명령을 수행합니다.
개인적인 이해: 사실 쉘 스크립트는 윈도우의 배치 명령이며 쉘 명령어와 약간의 스크립트 구문으로 작성된 프로그램입니다. 쉘 스크립트는 시스템 관리를 위한 좋은 도구이지만, 쉘 스크립트는 속도가 느리고 더 많은 CPU 리소스를 사용하여 호스트 리소스 할당이 좋지 않기 때문에 많은 숫자 작업을 처리하기에는 충분하지 않습니다.
변수:
변수 유형
: BASH 변수 유형은 문자열로 정의되며 정수 또는 배열 유형이 될 수 있으며 부동 소수점 유형이 없으므로 소수점은 없고 1/3 결과는 0.
🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 변수 선언 🎜: 기본값은 직접 선언할 수 있는 문자열입니다. 변수 이름 = 변수 내용(x=123)입니다. 그런데 배열이나 정수로 선언하려면 다음을 수행할 수 있습니다. 🎜
  • 변수와 변수 내용은 등호 =, a=123으로 연결됩니다.

  • 등호 양쪽에 공백 문자는 직접 연결할 수 없습니다

  • 영문과 숫자로 구성되며, 단, 시작은 숫자가 될 수 없습니다

  • 변수 내용에 특수문자가 있는 경우 "" 또는 ''를 사용하여 변수 내용을 합칠 수 있습니다

  • " "$ 변수에서는 원본을 그대로 유지할 수 있습니다. 특성

  • ' ' $ 변수에서 일반 문자로 처리

  • 을 처리하려면 이스케이프 문자를 사용하여 알 수 없는 특수 문자를 일반 문자

  • 로 처리할 수 있습니다 `` 또는 () 의미: `` 또는 () 내부 명령은 외부 입력으로 먼저 실행됩니다. 정보

  • 는 -를 +로 변경하고 [취소] 작업을 수행할 수 있습니다. p sum

  • 환경 변수로 업그레이드: PATH 내보내기
  • 변수 취소: a

  • 배열 정의: var[1]="123" var[2]="456" var[3 ]="789"

  • `` 또는 () 의미: `` 또는 () 안의 명령은 외부 입력 정보로 먼저 실행됩니다

  • Variable $$: 나타나는 숫자는 PID 번호입니다
  • 변수?: 이전 오류 명령의 오류 코드, 오류가 없으면 0

변수 상호 작용
: read -p "이름을 입력하세요:" -t 30 이름(-p는 세상에 프롬프트를 의미, -t는 입력 시간 30초를 의미)
변수 내용 확장
: PATH="$PATH":/home/bin
변수 내용 삭제
: echo ${path#/*:} 이 문장은 /부터 시작하는 가장 짧은 문자를 삭제한다는 의미입니다:
변수 내용 교체

:

Execution

:
1 . 직접 절대 경로 및 상대 경로 실행, 실행자 스크립트 실행 권한이 필요합니다.
2. 전역 변수는 bash shell.sh 또는 sh shell.sh를 통해 실행할 수 있습니다.
source와 sh 스크립트의 실행 방법에는 어떤 차이가 있나요?
sh 스크립트 또는 bash 스크립트는 새로운 bash 환경을 사용하여 스크립트의 명령을 실행합니다. 하위 프로그램이 완료되면 하위 프로그램의 각 변수 또는 작업은 상위 프로그램의 소스 스크립트가 종료됩니다. 상위 프로그램에서 실행되므로 모든 작업은 원본 bash에서 적용됩니다.
프로세스 제어(순서)
: 쉘 스크립트는 위에서 아래로, 왼쪽에서 오른쪽으로 순서대로 실행됩니다.
프로세스 제어(조건)
:
test -e file 파일명이 존재합니다
  • test -f file 파일명이 존재하고 is file

  • test -d 디렉토리 파일명이 존재합니다 그리고 디렉터리

  • test -r -w -x 파일 이름 읽기, 쓰기 및 실행 권한이 있는지 여부

  • test n1 -eq n2 두 값은 동일합니다

  • test n1 -ne n2 두 값이 동일하지 않습니다于 -GT N1이 N2

  • 보다 큽니다. -LT N1이 N2

  • 보다 작습니다. -GE가

  • 보다 큽니다. -Lele가

  • 보다 작습니다.
  • 스크립트 변수 상호작용은 ${0}, ${1}, ${2}, ${3}, ${0}을 사용하여 수행할 수도 있습니다. ${0}은 실행된 스크립트 이름, ${1을 나타냅니다. }는 첫 번째 입력된 변수, ${2}는 두 번째 입력된 변수, ${3}는 세 번째 입력된 변수를 나타냅니다. 사건 조건부 판단

    프로세스 제어(루프):

    while 루프

    루프용

    for 루프

    함수:

    ​ ​ 참고: 기존 언어와 달리 함수는 처음에 정의해야 합니다. 그래서 스크립트의 프로그램이 실행될 때 기능을 인식할 수 있습니다. 함수 매개변수는 ${1}, ${2}, ${3}를 사용하여 전달됩니다. 즉, 함수 호출 시 함수 내의 ${1}/${2}/${3}가 전달됩니다. .실제 매개변수. 스크립트를 실행할 때 전달된 매개변수 대신

                                                                                        

위 내용은 Linux--Bash 및 Shell 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
什么是linux设备节点什么是linux设备节点Apr 18, 2022 pm 08:10 PM

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

Linux中open和fopen的区别有哪些Linux中open和fopen的区别有哪些Apr 29, 2022 pm 06:57 PM

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

linux怎么判断pcre是否安装linux怎么判断pcre是否安装May 09, 2022 pm 04:14 PM

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux中什么叫端口映射linux中什么叫端口映射May 09, 2022 pm 01:49 PM

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

linux中eof是什么linux中eof是什么May 07, 2022 pm 04:26 PM

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

linux怎么查询mac地址linux怎么查询mac地址Apr 24, 2022 pm 08:01 PM

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

手机远程linux工具有哪些手机远程linux工具有哪些Apr 29, 2022 pm 05:30 PM

手机远程linux工具有:1、JuiceSSH,是一款功能强大的安卓SSH客户端应用,可直接对linux服务进行管理;2、Termius,可以利用手机来连接Linux服务器;3、Termux,一个强大的远程终端工具;4、向日葵远程控制等等。

linux中lsb是什么意思linux中lsb是什么意思May 07, 2022 pm 05:08 PM

linux中,lsb是linux标准基础的意思,是“Linux Standards Base”的缩写,是linux标准化领域中的标准;lsb制定了应用程序与运行环境之间的二进制接口,保证了linux发行版与linux应用程序之间的良好结合。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.