쉘 스크립트는 어떻게 사용해야 합니까?
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/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/e287dce1bca30a9896dc8bd2ecb0e156-15.png" 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 < file #获取输入流
写一个自动输入命令的脚本
自动提交github仓库的脚本
#!/bin/bashecho "-------Begin-------"git add . git commit -m $1echo $1git push origin masterecho "--------End--------"

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

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











<p>운영 체제를 사용자 정의하는 것은 일상 생활을 더욱 즐겁게 만드는 좋은 방법입니다. 사용자 인터페이스 변경, 사용자 정의 테마 적용, 위젯 추가 등을 수행할 수 있습니다. 오늘은 Windows 11에 ClassicShell을 설치하는 방법을 알려드리겠습니다. </p><p>이 프로그램은 오랫동안 사용되어 왔으며 운영 체제를 수정할 수 있습니다. 2017년에 해체된 조직은 이제 자원봉사자들이 운영하기 시작했습니다. 새 프로젝트는 OpenShell이라고 하며 현재 관심 있는 사람들을 위해 Github에서 사용할 수 있습니다. </p>&a

자동화 및 작업 스케줄링은 소프트웨어 개발에서 반복적인 작업을 간소화하는 데 중요한 역할을 합니다. API에서 데이터 가져오기, 데이터 처리 수행, 주기적인 업데이트 보내기 등 5분마다 실행해야 하는 Python 스크립트가 있다고 상상해 보세요. 스크립트를 너무 자주 수동으로 실행하면 시간이 많이 걸리고 오류가 발생하기 쉽습니다. 여기서 작업 스케줄링이 시작됩니다. 이 블로그 게시물에서는 Python 스크립트가 5분마다 실행되도록 예약하여 수동 개입 없이 자동으로 실행되도록 하는 방법을 살펴보겠습니다. 이 목표를 달성하는 데 사용할 수 있는 다양한 방법과 라이브러리에 대해 논의하여 작업을 효율적으로 자동화할 수 있습니다. time.sleep() 함수를 사용하여 5분마다 Python 스크립트를 실행하는 쉬운 방법은 tim을 활용하는 것입니다.

Cutting은 포괄적인 편집 기능, 가변 속도 지원, 다양한 필터 및 뷰티 효과, 풍부한 음악 라이브러리 리소스를 갖춘 비디오 편집 도구입니다. 이 소프트웨어에서는 비디오를 직접 편집하거나 편집 스크립트를 만들 수 있지만 어떻게 해야 합니까? 이번 튜토리얼에서는 에디터가 스크립트를 편집하고 만드는 방법을 소개합니다. 제작 방법: 1. 컴퓨터에서 편집 소프트웨어를 클릭하여 연 다음 "Creation Script" 옵션을 찾아 클릭하여 엽니다. 2. 크리에이티브 스크립트 페이지에서 '스크립트 제목'을 입력한 후, 개요에 촬영 내용에 대한 간략한 소개를 입력합니다. 3. 개요에서 "스토리보드 설명" 옵션을 어떻게 볼 수 있나요?

오늘날 빠르게 변화하는 디지털 세상에서 컴퓨터 작업을 자동화할 수 있으면 생산성과 편의성이 크게 향상될 수 있습니다. 작업 중 하나는 컴퓨터를 종료하는 것인데, 수동으로 수행할 경우 시간이 많이 걸릴 수 있습니다. 고맙게도 Python은 시스템과 상호 작용하고 이러한 작업을 자동화할 수 있는 강력한 도구 세트를 제공합니다. 이 블로그 게시물에서는 컴퓨터를 쉽게 종료하기 위해 Python 스크립트를 작성하는 방법을 살펴보겠습니다. 자동 종료를 예약하거나, 원격으로 종료를 시작하거나, 수동 종료를 방지하여 시간을 절약하려는 경우 이 스크립트가 유용할 것입니다. 필수 모듈 가져오기 스크립트 작성을 시작하기 전에 시스템과 상호 작용하고 shutdown 명령을 실행하기 위해 필요한 모듈을 가져와야 합니다. 이 섹션에서는 os 모듈을 가져옵니다(이 모듈은

Linux 시스템에서 .sh 파일을 실행하는 방법은 무엇입니까? Linux 시스템에서 .sh 파일은 일련의 명령을 실행하는 데 사용되는 셸 스크립트라는 파일입니다. .sh 파일 실행은 매우 일반적인 작업입니다. 이 기사에서는 Linux 시스템에서 .sh 파일을 실행하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 방법 1: 절대 경로를 사용하여 .sh 파일을 실행합니다. Linux 시스템에서 .sh 파일을 실행하려면 절대 경로를 사용하여 파일 위치를 지정할 수 있습니다. 구체적인 단계는 다음과 같습니다. 터미널을 엽니다.

1. 오늘 Toutiao에 기사를 게시하여 어떻게 돈을 벌 수 있습니까? 오늘 Toutiao에 기사를 게시하여 더 많은 수입을 얻는 방법! 1. 기본 권익 활성화: 기사의 원본은 광고를 통해 수익을 얻을 수 있으며, 동영상은 가로 화면 모드에서 원본이어야 수익을 얻을 수 있습니다. 2. 팬 100명 권리 활성화: 팬 수가 100명 이상에 도달하면 마이크로 헤드라인, 오리지널 Q&A 작성, Q&A 수익을 얻을 수 있습니다. 3. 독창적인 작품을 고집하라: 독창적인 작품에는 기사, 마이크로 헤드라인, 질문 등이 포함되며, 300단어 이상이어야 합니다. 불법 표절 저작물을 원작으로 출판할 경우 크레딧 점수가 차감되며, 수익금도 차감되므로 주의하시기 바랍니다. 4. 수직성: 전문 분야에서 기사를 작성할 때 분야를 넘나들며 마음대로 기사를 작성할 수 없으며 적절한 추천을 받을 수 없으며, 작품의 전문성과 정확성을 확보할 수 없으며 팬을 유치하기가 어렵습니다. 그리고 독자들. 5. 활동: 높은 활동,

스크립트를 실행할 때 PowerShell에서 "Add-AppxPackage: 배포에 실패했습니다. HRESULT: 0x80073D02, 패키지가 수정하는 리소스가 현재 사용 중이므로 패키지를 설치할 수 없습니다. 오류 0x80073D02..."라는 오류 메시지가 표시됩니까? 오류 메시지에 나와 있듯이 이는 이전 프로세스가 실행되는 동안 사용자가 하나 또는 모든 WindowsShellExperienceHost 응용 프로그램을 다시 등록하려고 할 때 발생합니다. 이 문제를 신속하게 해결할 수 있는 몇 가지 간단한 솔루션이 있습니다. 수정 1 – 경험 호스트 프로세스 종료 powershell 명령을 실행하기 전에 종료해야 합니다
![Explorer.exe가 시스템 시작 시 시작되지 않음 [수정]](https://img.php.cn/upload/article/000/887/227/168575230155539.png?x-oss-process=image/resize,m_fill,h_207,w_330)
요즘 많은 Windows 사용자는 심각한 Windows 시스템 문제에 직면하기 시작합니다. 문제는 시스템이 로드된 후 Explorer.exe를 시작할 수 없고 사용자가 파일이나 폴더를 열 수 없다는 것입니다. 그러나 Windows 사용자는 경우에 따라 명령 프롬프트를 사용하여 Windows 탐색기를 수동으로 열 수 있으며 시스템을 다시 시작할 때마다 또는 시스템 시작 후에 그렇게 해야 합니다. 이는 문제가 될 수 있으며 아래에 언급된 다음 요인으로 인해 발생합니다. 시스템 파일이 손상되었습니다. 빠른 시작 설정을 활성화합니다. 오래되었거나 문제가 있는 디스플레이 드라이버. 시스템의 일부 서비스가 변경되었습니다. 수정된 레지스트리 파일. 위의 모든 요소를 염두에 두고 사용자에게 확실히 도움이 될 몇 가지 요소를 생각해냈습니다.
