셸 문법 소개 (중): echo 명령, printf 명령, 리 셋, 파일 포함, 함수

4068 단어 Linux
명령
1. 일반 문자 보이 기
echo "It is a test" # 输出 It is a test

 
2. 전의 문자 보이 기
echo "\"It is a test\"" # 输出 "It is a test"

 
3. 변수 보이 기
read name
echo "I'm ${name}"

      read 명령 은 입력 한 매개 변 수 를 하나의 어구 로 받 아들 이 고 각 어 구 는 빈 칸 으로 구분 해 야 합 니 다.입력 한 어구 개수 가 필요 한 매개 변수 개수 보다 많 으 면 더 많은 어 구 는 전체 가 마지막 매개 변수 로 받 아들 여진 다.예 를 들 면:
read firstStr secondStr
echo "第一个参数:$firstStr; 第二个参数:$secondStr"

실행 상황:
$ ./test.sh 
一 二 三 四
第一个参数:一; 第二个参数:二 三 四

다음 과 같은 인자 도 있 습 니 다.
  • - p 알림 문자 입력
  • - n 입력 문자 길이 제한 (6 비트 달성, 자동 종료)
  • - t 입력 제한 시간
  • - s 입력 내용 숨 기기
  •  
    4. 전의 오픈
        -e 을 사용 하면 전의 가 열 린 다.
    의 전의 의 미 는 줄 을 바 꾸 는 것 이 고 \c 의 의 미 는 줄 을 바 꾸 지 않 는 다 는 것 이다.
    예 를 들 면:
    echo "换
    行" echo -e "换
    行"

    실행 상황:

    行 换 行

     
    5. 결 과 를 파일 로 지정 하기
    echo "It is a test" > myfile # 覆盖的形式
    echo "It is a test" >> myfile # 附加的形式

     
    6. 명령 실행 결과 보이 기
        반 따옴표 를 사용 하여 명령 을 표시 하 다.예 를 들 면:
    echo `date`

    실행 상황:
    2018年 07月 20日 星期五 11:22:36 CST

     
    printf 명령
        C 언어 와 유사 한 printf ().기본 printf 는 echo 처럼 줄 바 꿈 자 를 자동 으로 추가 하지 않 습 니 다. 수 동 으로 추가 해 야 합 니 다
    .
    1. 문법
    printf format-string [arguments...]

    2. 예시
    printf "%s\t%s\t%s
    " 姓名 年龄 体重 printf "%s\t%d\t%.2f
    " 张三 20 55.1234

    실행 상황:
    姓名  年龄  体重
    张三  20  55.12

    3. C 언어 를 참고 하 는 printf () 방법 을 더 많이 소개 합 니 다.
     
    3. 입 출력 재 설정
    명령 하 다.
    설명 하 다.
    command > file
    출력 을 file 로 다시 설정 하기
    command < file
    입력 을 file 로 다시 지정 하기
    command >> file
    출력 을 추가 로 file 로 재 설정 합 니 다.
    n > file
    파일 설명 자 를 n 으로 하 는 파일 을 file 로 바 꿉 니 다.
    n >> file
    파일 설명 자 를 n 으로 하 는 파일 을 file 로 추가 합 니 다.
    n >& m
    출력 파일 m 와 n 을 합 칩 니 다.
    n
    입력 파일 m 와 n 을 합 칩 니 다.
    << tag
    태그 시작 과 태그 끝 사이 의 내용 을 입력 합 니 다.
    1. 파일 설명자
  • 0: 표준 입력 파일 (stdin)
  • 1: 표준 출력 파일 (stdout)
  • 2: 표준 오류 파일 (stderr)
  •  
    2. << tag
    기본 형식 은:
    command << tag
        content
    tag

    주의:
  • 끝 에 있 는 tag 는 반드시 대문자 로 써 야 합 니 다. 앞 에 문자 가 있 으 면 안 되 고 뒤에 도 빈 칸 과 들 여 쓰기 가 있어 서 는 안 됩 니 다.
  • 시 작 된 tag 전후의 빈 칸 은 무시 된다.

  • 예시:
    wc -l << EOF
        1
        2
        3
    EOF

    그 중에서 wc -l 명령 은 content 의 줄 수 를 통계 할 수 있 고 집행 결 과 는 3 이다.
     
    3. dev/null 파일
        '출력 금지' 효 과 를 원한 다 면 출력 을/dev/null 로 바 꿀 수 있 습 니 다. 예 를 들 어
    command > /dev/null

       /dev/null 은 특별한 파일 입 니 다. 기록 한 내용 은 모두 버 려 집 니 다. stdout 과 stderr 를 차단 하려 면 이렇게 쓸 수 있 습 니 다.
    command > /dev/null 2>&1

        그 중에서 $> 뒤에 놓 으 면 재 설정 한 것 은 파일 이 아니 라 파일 설명자 임 을 나타 낸다.
     
    파일 포함
    1. 문법
    . filename # 注意点号(.)和文件名中间有一空格
    source filename # 这样也可以

    2. 예시
        새 셸 스 크 립 트 두 개 를 만 듭 니 다. 그 중 test 1. sh 는 다음 과 같 습 니 다.
    name="afei"

        그리고 test 2. sh 는 test 1. sh 를 참조 하고 이 변 수 를 사용 할 수 있 습 니 다.
    source test1.sh
    echo "name is: ${name}"

        test 2. sh 를 실행 한 결 과 는 다음 과 같 습 니 다.
    name is afei

     
    함수
    1. 정의
    function_name ()
    {
        ....
    }
    # 或者
    function function_name()
    {
       ....
    }

    2. 호출
    function_name parm1 parm2

    3. 반환 값
        표시 할 수 있 는 return 을 추가 하여 되 돌려 줍 니 다. 추가 하지 않 으 면 마지막 운행 결 과 를 되 돌려 줍 니 다. return 후 정수 만 따라 갈 수 있 고 수치 범 위 는 0 ~ 255 입 니 다.    $? 를 사용 하여 함수 의 반환 값 을 가 져 옵 니 다.
    4. 예시
    function add()
    {
        return $(($1 + $2))
    }
     
    add 1 2
    echo $? # 输出 3

    좋은 웹페이지 즐겨찾기