Shell 스크립트는 Shell의 명령 해석 기능을 사용하여 일반 텍스트 파일을 구문 분석한 후 이러한 기능을 실행합니다. Shell 스크립트는 일련의 명령 모음이라고 할 수도 있습니다.
Shell은 win/Unix/Linux에서 직접 사용할 수 있으며, 수많은 내부 시스템 기능을 호출하여 프로그램을 해석하고 실행할 수 있습니다. Shell 스크립트에 능숙하다면 컴퓨터를 조작하고 저장하는 것이 더 쉬워질 것입니다. 많은 시간.
Shell 애플리케이션 시나리오
Shell이 할 수 있는 작업
일부 복잡한 명령을 단순화합니다(일반적으로 github 코드를 제출하려면 여러 단계가 필요할 수 있지만 Shell을 사용하면 한 단계로 단순화할 수 있습니다)
할 수 있습니다 write some 스크립트는 프로젝트의 최신 SDK(라이브러리) 자동 교체를 자동으로 실현합니다
자동 패키징, 컴파일, 퍼블리싱 및 기타 기능
디스크의 빈 폴더 정리
요컨대, 일반 라이브 스크립트를 사용해 볼 수 있습니다
Shell이 할 수 없는 작업
정확한 계산이 필요한 경우
언어 효율성이 필요한 경우
일부 네트워크 작업이 필요한 경우
요약 , Shell은 스크립트를 빠르게 개발할 수 있으며 개발 프로세스를 단순화하고 고급 언어를 대체하는 데 사용할 수 없습니다.
Shell 작동 방식
Shell은 컴파일할 필요가 없기 때문에 스크립트 언어라고 할 수 있지만, 컴파일 및 실행에는 기존 언어보다 더 많은 해석 프로세스가 필요하므로 기존 직접 컴파일 언어보다 효율성이 약간 떨어집니다.
가장 간단한 스크립트:
#!/bin/bashecho "Hello World"
텍스트 편집 도구를 열고 위와 같이 편집한 다음 test.sh로 저장하면 됩니다.
스크립트 실행:
1. cd 到该目录下2. chmod +x ./test.sh #给脚本权限3. ./test.sh #执行脚本
이렇게 해서 우리는 처음이자 가장 간단한 스크립트를 작성했습니다. 이제 몇 가지 복잡한 스크립트를 작성해 볼 수 있습니다.
Variables in Shell
myText="hello world"muNum=100
여기서 주목해야 할 점은 "=" 앞뒤에 공백이 있어서는 안 되며 명명 규칙은 다른 언어와 동일하다는 것입니다.
변수에 액세스
myText="hello world"muNum=100echo $myTextecho muNum
변수에 액세스하려면 $를 사용해야 합니다. 그렇지 않으면 아래 그림과 같이 출력이 일반 텍스트 콘텐츠가 됩니다.

쉘의 4가지 산술 연산
예제 프로그램
#!/bin/bashecho "Hello World !"a=3b=5val=`expr $a + $b`echo "Total value : $val"val=`expr $a - $b`echo "Total value : $val"val=`expr $a \* $b`echo "Total value : $val"val=`expr $a / $b`echo "Total value : $val"
여기서 주의할 점은 변수를 정의할 때 "=" 앞뒤에 공백이 있어서는 안 된다는 점입니다. 단, 사칙연산을 4번 수행할 때에는 연산 기호 앞뒤에 공백이 있어야 하며, 곱셈을 수행할 때 이스케이프 처리해야 합니다.

다른 연산자 =, ==, !=,! , -o, -a
예제 프로그램
a=3b=5val=`expr $a / $b`echo "Total value : $val"val=`expr $a % $b`echo "Total value : $val"if [ $a == $b ]then echo "a is equal to b"fiif [ $a != $b ]then echo "a is not equal to b"fi

관계 연산자
#!/bin /sh 예제 프로그램
a=10b=20if [ $a -eq $b ]then echo "true"else echo "false"fiif [ $a -ne $b ]then echo "true"else echo "false"fiif [ $a -gt $b ]then echo "true"else echo "false"fiif [ $a -lt $b ]then echo "true"else echo "false"fiif [ $a -ge $b ]then echo "true"else echo "false"fiif [ $a -le $b ]then echo "true"else echo "false"fi

字符串运算符


字符串
#!/bin/shmtext="hello" #定义字符串 mtext2="world"mtext3=$mtext" "$mtext2 #字符串的拼接echo $mtext3 #输出字符串echo ${#mtext3} #输出字符串长度echo ${mtext3:1:4} #截取字符串

数组
#!/bin/sharray=(1 2 3 4 5) #定义数组 array2=(aa bb cc dd ee) #定义数组 value=${array[3]} #找到某一个下标的数,然后赋值echo $value #打印 value2=${array2[3]} #找到某一个下标的数,然后赋值echo $value2 #打印 length=${#array[*]} #获取数组长度echo $length

输出程序
echo
#!/bin/shecho "hello world" echo hello world text="hello world"echo $textecho -e "hello \nworld" #输出并且换行echo "hello world" > a.txt #重定向到文件echo `date` #输出当前系统时间

printf
同c语言,就不过多介绍了
判断语句
if
if-else
if-elseIf
case
#!/bin/sha=10b=20if [ $a == $b ]then echo "true"fiif [ $a == $b ]then echo "true"else echo "false"fiif [ $a == $b ]then echo "a is equal to b"elif [ $a -gt $b ]then echo "a is greater than b"elif [ $a -lt $b ]then echo "a is less than b"else echo "None of the condition met"fi

test命令
test $[num1] -eq $[num2] #判断两个变量是否相等 test num1=num2 #判断两个数字是否相等
for循环
#!/bin/shfor i in {1..5}doecho $idonefor i in 5 6 7 8 9doecho $idonefor FILE in $HOME/.bash*do echo $FILEdone
<code class="bash"><span class="hljs-meta"><br/><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/e287dce1bca30a9896dc8bd2ecb0e156-15.png?x-oss-process=image/resize,p_40" class="lazy" alt=""/></span></code>
while循环
#!/bin/shCOUNTER=0while [ $COUNTER -lt 5 ]doCOUNTER=`expr $COUNTER + 1`echo $COUNTERdoneecho '请输入。。。'echo 'ctrl + d 即可停止该程序'while read FILMdoecho "Yeah! great film the $FILM"done
以上是while循环的两种用法,第一种是比较常规的,执行循环,然后每次都把控制的数加1,就可以让while循环有退出的条件了。
第二种是用户从键盘数据,然后把用户输入的文字输出出来。
跳出循环
break #跳出所有循环 break n #跳出第n层f循环 continue #跳出当前循环
函数
#!/bin/shsysout(){echo "hello world"} sysout
定义一个没有返回值的函数,然后调用该函数
#!/bin/shtest(){ aNum=3anotherNum=5return $(($aNum+$anotherNum)) } test result=$?echo $result
定义一个有返回值的函数,调用该函数,输出结果

#!/bin/shtest(){echo $1 #接收第一个参数echo $2 #接收第二个参数echo $3 #接收第三个参数echo $# #接收到参数的个数echo $* #接收到的所有参数 } test aa bb cc
定义了一个需要传递参数的函数

重定向
$echo result > file #将结果写入文件,结果不会在控制台展示,而是在文件中,覆盖写 $echo result >> file #将结果写入文件,结果不会在控制台展示,而是在文件中,追加写echo input
写一个自动输入命令的脚本
自动提交github仓库的脚本
#!/bin/bashecho "-------Begin-------"git add . git commit -m $1echo $1git push origin masterecho "--------End--------"

以上便是我对shell知识的总结,欢迎大家点心,评论,一起讨论~~
위 내용은 쉘 스크립트는 어떻게 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Linux 네트워크 구성은 다음 단계를 통해 완료 할 수 있습니다. 1. 네트워크 인터페이스 구성 IP 명령을 사용하여 구성 파일 관리 설정을 일시적으로 설정하거나 편집하십시오. 2. 고정 IP가 필요한 장치에 적합한 정적 IP를 설정합니다. 3. 방화벽을 관리하고 IPTables 또는 방화구 도구를 사용하여 네트워크 트래픽을 제어하십시오.

유지 보수 모드는 Linux 시스템 관리에서 중요한 역할을 수행하여 수리, 업그레이드 및 구성 변경을 돕습니다. 1. 유지 보수 모드를 입력하십시오. 그루브 메뉴를 통해 선택하거나 "sudosystemctlisolaterscue.target"명령을 사용할 수 있습니다. 2. 유지 보수 모드에서는 파일 시스템 수리 및 시스템 업데이트 작업을 수행 할 수 있습니다. 3. 고급 사용법에는 루트 비밀번호 재설정과 같은 작업이 포함됩니다. 4. 유지 보수 모드를 입력하거나 파일 시스템을 마운트 할 수없는 것과 같은 일반적인 오류는 Grub 구성을 확인하고 FSCK 명령을 사용하여 수정할 수 있습니다.

Linux 유지 관리 모드 사용 타이밍 및 이유 : 1) 시스템이 시작될 때 2) 주요 시스템 업데이트 또는 업그레이드를 수행 할 때 3) 파일 시스템 유지 관리를 수행 할 때. 유지 보수 모드는 안전하고 제어 된 환경을 제공하여 운영 안전 및 효율성을 보장하고 사용자에게 미치는 영향을 줄이며 시스템 보안을 향상시킵니다.

Linux의 필수 명령에는 다음이 포함됩니다. 1.LS : 목록 디렉토리 내용; 2.CD : 작업 디렉토리 변경; 3.mkdir : 새 디렉토리 생성; 4.RM : 파일 또는 디렉토리 삭제; 5.CP : 파일 또는 디렉토리 복사; 6.mv : 파일 또는 디렉토리를 이동하거나 바꾸십시오. 이러한 명령은 사용자가 커널과 상호 작용하여 파일 및 시스템을 효율적으로 관리하는 데 도움이됩니다.

Linux에서 파일 및 디렉토리 관리는 LS, CD, MKDIR, RM, CP, MV 명령을 사용하며 권한 관리는 CHMOD, Chown 및 CHGRP 명령을 사용합니다. 1. 파일 및 디렉토리 관리 명령 LS-L 목록 상세 정보와 같은 MKDIR-P는 디렉토리를 재귀 적으로 생성합니다. 2. CHMOD755FILE SET 파일 권한 설정, ChownUserFile 변경 파일 소유자 및 CHGRPGROUPFILE와 같은 허가 관리 명령은 파일 그룹을 변경합니다. 이러한 명령은 파일 시스템 구조 및 사용자 및 그룹 시스템을 기반으로하며 시스템 호출 및 메타 데이터를 통해 작동 및 제어합니다.

MaintenanceModeInlinlinlinuxisspecialbootenvernmentforcriticalsystemmaintenancetasks.itallowsAdministratorStorformtaskSlikeresettingpasswords, Repairingfilesystems, Andrecoveringfrombootfailuresinaminimalenvernment.toentermaintingancemode, intermainteancemode

Linux의 핵심 구성 요소에는 커널, 파일 시스템, 쉘, 사용자 및 커널 공간, 장치 드라이버 및 성능 최적화 및 모범 사례가 포함됩니다. 1) 커널은 하드웨어, 메모리 및 프로세스를 관리하는 시스템의 핵심입니다. 2) 파일 시스템은 데이터를 구성하고 Ext4, BTRF 및 XFS와 같은 여러 유형을 지원합니다. 3) Shell은 사용자가 시스템과 상호 작용하고 스크립팅을 지원하는 명령 센터입니다. 4) 시스템 안정성을 보장하기 위해 사용자 공간을 커널 공간과 별도로 분리하십시오. 5) 장치 드라이버는 하드웨어를 운영 체제에 연결합니다. 6) 성능 최적화에는 튜닝 시스템 구성 및 다음 모범 사례가 포함됩니다.

Linux 시스템의 5 가지 기본 구성 요소는 다음과 같습니다. 1. Kernel, 2. System Library, 3. System Utilities, 4. 그래픽 사용자 인터페이스, 5. 응용 프로그램. 커널은 하드웨어 리소스를 관리하고 시스템 라이브러리는 사전 컴파일 된 기능을 제공하며 시스템 유틸리티는 시스템 관리에 사용되며 GUI는 시각적 상호 작용을 제공하며 응용 프로그램은 이러한 구성 요소를 사용하여 기능을 구현합니다.


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

Dreamweaver Mac版
시각적 웹 개발 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

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