1. 변수
1. 변수 명명 규칙: 문자 또는 밑줄로 시작하고 그 뒤에 숫자, 문자 또는 밑줄이 옵니다. 함부로 이름을 지정하지 말고, 변수를 보면 그 의미를 추측할 수 있습니다. 변수 이름
2. 변수 할당 echo ${egon_salary}yuan
20000yuan4. bash에서는 데이터 유형을 선언할 필요가 없습니다. 기본값은 문자 유형입니다.2. * / %[root@bogon ~]# echo $[5%2]1
2. 할당 연산자: =, +=, -=, *=, /=, %=
[root@bogon ~]# x=10
[root@bogon ~]# ((x+=1))[root@bogon ~]# echo $x
113. 관계 연산자: ,!=, ==,>=,관계 연산자는 종종 (( ))와 함께 사용됩니다. []는 동일한 결과를 얻을 수 있지만 (( ))는 파일 유형을 결정할 수 없습니다. 파일 형식을 확인하려면 [], []를 사용해야 합니다. 결과는 테스트 명령과 동일합니다
명령 실행 결과를 확인하려면 $?를 사용하여 결과가 0이면 true를 의미합니다. 0, 이는 거짓을 의미합니다.
[root@bogon ~]# x=10
[root@bogon ~]# ((x> =8))
[root@bogon ~]# echo $?
0
4 .쉘의 계산기
앞서 $[]를 사용하여 몇 가지 간단한 연산을 수행할 수 있다고 말했지만 소수 연산이 포함된 경우에는 쉘에 있는 계산기를 사용해야 합니다
먼저 소프트웨어를 설치해야 합니다. yum install -y bc
[root@bogon ~]# res=$(echo 'scale=2;1/3' |bc -l | cut -d'.' -f2)
[root@bogon ~]# echo $ {res}%
33%
-b 파일이 존재하며 블록 파일입니다
int1 -gt int2 1 int2 int1 -ge int2 int1이 int2보다 크거나 같습니다 문자열 비교 str1 = str2 str1과 str2가 같습니다 str1! =str2 str1과 str2가 같지 않음 수식 비교 expression1 -a 표현식2 수식 1과 수식 2가 모두 true expression1 -o 수식2 수식 1 또는 수식 2가 true6. 테스트:
[root@bogon ~]# [[ 2 > 1 ]][root@bogon ~]# echo $?0 [root@bogon ~]# ((20>10))[root@bogon ~]# echo $?0 [root@bogon ~]# ((20<p></p> 문자열 테스트 <p></p><pre class="brush:php;toolbar:false">[root@bogon ~]# [ "abc" = "abc" ][root@bogon ~]# echo $?0 [root@bogon ~]# [[ "abc" = "abc" ]][root@bogon ~]# echo $?0 [root@bogon ~]# (("abc" = "abc"))[root@bogon ~]# echo $?1
[root@bogon ~]# [[ a = a && 1 <p></p><pre class="brush:php;toolbar:false">[root@bogon ~]# (( a = a || 1 > 2 ))[root@bogon ~]# echo $?1[root@bogon ~]# [[ a = a || 1 > 2 ]][root@bogon ~]# echo $?0단순히 숫자를 비교하려면 (( ))를 사용하세요.순수한 숫자가 아닌 비교에는 [[ ] ]
3을 사용하세요. control
1) 사용자 계정 비밀번호 확인:
input your name : zhangcan input password : 123login successful [root@bogon ~]# ./usertest.sh input your name : hha input password : hag user or password error
#! /bin/bashuser='zhangcan'password='123'read -p 'input your name : ' name
read -p 'input password : ' codeif [ $name = $user -a $code = $password ];then
echo 'login successful'elseecho 'user or password error'fi~
#!/bin/bash #根据用户输入的成绩,判断所属档次,并输出给用户read -p 'input your score : ' scoreif [ $score -ge 90 ];then
echo '优秀'elif [ $score -ge 70 -a $score -lt 90 ];then
echo '良好'elif [ $score -ge 60 -a $score -lt 70 ];then
echo '及格'elif [ $score -lt 60 ];then
echo '较差'fi
동안(조건)
do Command done예: 사용자가 입력하는 파일 형식을 결정합니다#!/bin/bashwhile : do read -p 'input your file : ' fileif [ -z $file ];thencontinueelsebreakfi doneif [ -f $file ];then echo "$file is regular file"elif [ -b $file ];then echo "$file is block file"elif [ -d $file ];then echo "$file is directory file"elseecho "$file type unkonw"fi3.for loop for i in {1..10} # in이 반드시 a일 필요는 없습니다. 숫자, 결과를 반환하는 명령이면 do echo $i done예제 1: 서브넷에서 사용할 수 있는 IP를 테스트하는 스크립트 작성
#!/bin/bashfor i in {1..50} do ping -c1 192.168.16.$i &> /dev/null # -c1表示ping一次if [ $? -ne 0 ];then echo "192.168.16.$i successful"echo "192.168.16.$i" >> ~/ipavailable.txt fi done~예제 2 : /dev
#!/bin/bashdir='/dev'for i in $(ls $dir) doif [ -h $dir/$i ];then ((link+=1))elif [ -f $dir/$i ];then (( rfile+=1))elif [ -d $dir/$i ];then ((directory+=1))elif [ -b $dir/$i ];then (( block+=1 ))else(( typeunknow+=1)) fi done echo 'block' $block echo 'regular file' $rfile echo 'directory' $directory echo 'link' $link echo 'unknow' $typeunknow에서 각 파일 형식의 수를 계산합니다. 중첩 루프예제 1: 99구구단 출력
#!/bin/bashfor ((i=1;i<p></p>예제 2: 로그인 성공 후 사용자 로그인 계정 비밀번호 확인 quit<div class="cnblogs_code"></div><pre class="brush:php;toolbar:false">#!/bin/bashuser='zhangcan'password='123'tag=truewhile $tag do read -p 'input your name : ' name read -p 'input your password : ' codeif [[ $name = $user ]] && [[ $code = $password ]];then echo 'login successful'while $tag do read -p '>>: ' cmdif [[ $cmd = 'quit' ]];then tag=falseelse$cmd fi done fi done
위 내용은 기본 쉘 구문 소개 및 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Linux의 5 가지 핵심 구성 요소는 커널, 쉘, 파일 시스템, 시스템 라이브러리 및 시스템 도구입니다. 1. 커널은 하드웨어 리소스를 관리하고 응용 프로그램에 서비스를 제공합니다. 2. Shell은 사용자와 시스템 간의 인터페이스 역할을하며 명령을 해석하고 실행합니다. 3. 파일 시스템은 데이터 저장 및 구성을 담당합니다. 4. 시스템 라이브러리는 프로그램 통화를 제공하기 위해 사전 컴파일 된 기능을 제공합니다. 5. 시스템 도구는 시스템 관리 및 유지 보수에 사용됩니다. 이러한 구성 요소는 Linux에게 강력한 기능과 유연성을 제공하기 위해 함께 작동합니다.

이 기사는 데비안 시스템의 OpenSSL 구성을 확인하여 시스템의 보안 상태를 신속하게 파악하는 데 도움이되는 몇 가지 방법을 소개합니다. 1. OpenSSL 버전을 먼저 확인하고 OpenSSL이 설치되었는지 확인 및 버전 정보를 확인하십시오. 터미널에 다음 명령을 입력하십시오. OpenSSLVERSION이 설치되지 않으면 시스템에 오류가 발생합니다. 2. 구성 파일을 봅니다. OpenSSL의 기본 구성 파일은 일반적으로 /etc/ssl/openssl.cnf에 있습니다. 텍스트 편집기 (예 : Nano)를 사용하여 Sudonano/etc/ssl/openssl.cnf이 파일에는 키, 인증서 경로 및 암호화 알고리즘과 같은 중요한 구성 정보가 포함되어 있습니다. 3. Ope를 활용하십시오

이 안내서는 데비안 시스템에서 Hadoop 개발 환경을 구축하는 방법에 대해 자세히 설명합니다. 1. Java Development Kit (JDK) 설치 먼저, OpenJDK를 설치하십시오 : sudoaptupdatesudoaptinstallopenjdk-11-jdk-yconfigure java_home 환경 변수 : 파일 끝에 sudonano/etc/환경 (실제 JDK 버전에 따라 경로 조정) : java_home = "/usr/lib/jvm/java-11-openjdk-amd64"저장 및 종료 다음 소스/등을 실행합니다

Debian 시스템에서 Hadoop 리소스를 효과적으로 관리하려면 다음 단계가 필요합니다. Hadoop 배포 : 먼저 Debian 시스템에 Hadoop의 설치 및 구성을 완료하십시오. 여기에는 Hadoop 배포 패키지 다운로드, 압축 압축, 환경 변수 설정 등과 같은 필요한 작업이 포함됩니다. 클러스터 구성 : 설치가 완료된 후 HDFS (Hadoop 분산 파일 시스템) 및 Yarn (YetanotherResourcenegotiator)의 설정을 포함하여 Hadoop 클러스터를 구성합니다. Core-Site.xml, hdfs-site.xml, mapred-site.x와 같은 코어 구성 파일을 수정해야합니다.

DebiantomCat 로그의 보안을 향상 시키려면 다음 주요 정책에주의를 기울여야합니다. 1. 권한 제어 및 파일 관리 : 로그 파일 권한 : 기본 로그 파일 권한 (640)은 액세스를 제한합니다. Catalina.sh 스크립트 (예 : 0027에서 0022로 변경)에서 Umask 값을 수정하거나 Log4J2 구성 파일에서 직접 제출을 설정하여 적절한 읽기 및 쓰기 권한을 보장하는 것이 좋습니다. 로그 파일 위치 : Tomcat 로그는 일반적으로/opt/tomcat/logs (또는 유사한 경로)에 있으며이 디렉토리의 권한 설정을 정기적으로 확인해야합니다. 2. 로그 회전 및 형식 : 로그 회전 : server.xml 구성

Tomcat 서버 로그의 경고 메시지는 응용 프로그램 성능 또는 안정성에 영향을 줄 수있는 잠재적 문제를 나타냅니다. 이러한 경고 정보를 효과적으로 해석하려면 다음 핵심 사항에주의를 기울여야합니다. 경고 내용 : 유형, 원인 및 가능한 솔루션을 명확히하기 위해 경고 정보를주의 깊게 연구하십시오. 경고 정보는 일반적으로 자세한 설명을 제공합니다. 로그 레벨 : Tomcat 로그에는 정보, 경고, 오류 등과 같은 다양한 수준의 정보가 포함되어 있습니다. "경고"레벨 경고는 치명적이지 않은 문제이지만주의가 필요합니다. 타임 스탬프 : 문제가 발생할 때의 시점을 추적하기 위해 경고가 발생하는 시간을 기록하고 특정 이벤트 또는 작업과의 관계를 분석하십시오. 컨텍스트 정보 : 경고 정보 전후에 로그 콘텐츠보기를 얻으십시오.

Tomcat 로그는 메모리 누출 문제를 진단하는 열쇠입니다. Tomcat 로그를 분석하면 메모리 사용 및 가비지 수집 (GC) 동작에 대한 통찰력을 얻을 수 있으며 메모리 누출을 효과적으로 찾아서 해결할 수 있습니다. 다음은 Tomcat 로그를 사용하여 메모리 누출 문제를 해결하는 방법입니다. 1. GC 로그 분석 먼저 자세한 GC 로깅을 활성화하십시오. 다음 JVM 옵션을 Tomcat 시작 매개 변수에 추가하십시오. -xx : printgcdetails-xx : printgcdatestamps-xloggc : gc. 분석 gc.log

데비안 시스템 하에서 아파치 로그가 서버 성능에 미치는 영향은 양날의 검으로 긍정적 인 영향과 잠재적 부정적인 영향을 미칩니다. 긍정적 인 측면 : 문제 진단 도구 : Apache Log는 서버에 모든 요청과 응답을 자세히 기록하며 빠르게 결함을 찾는 데 유용한 리소스입니다. 오류 로그를 분석하면 구성 오류, 권한 문제 및 기타 예외를 쉽게 식별 할 수 있습니다. 보안 모니터링 Sentinel : 액세스 로그는 악의적 인 공격 시도와 같은 잠재적 인 보안 위협을 추적 할 수 있습니다. 로그 감사 규칙을 설정하면 비정상적인 활동이 효과적으로 감지 될 수 있습니다. 성능 분석 어시스턴트 : 액세스 로깅 요청 빈도 및 리소스 소비를위한 가장 인기있는 페이지 또는 서비스를 분석하여 리소스 할당을 최적화합니다. 상단 또는 HTOP 등과 결합


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

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

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版
시각적 웹 개발 도구

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