ホームページ  >  記事  >  運用・保守  >  シェル スクリプトに関する知っておくべき古典的な 13 の質問

シェル スクリプトに関する知っておくべき古典的な 13 の質問

Linux中文社区
Linux中文社区転載
2023-08-03 14:50:011263ブラウズ

シェル スクリプトに関する知っておくべき古典的な 13 の質問

    ##シェルに関する古典的な 13 の質問
    • 1. なぜシェルと呼ばれるのですか?
    • 2 。シェル プロンプト (PS1) とキャリッジ リターン (CR) の関係は何ですか?
    • 3. 他の人がエコーすると、あなたもエコーします。エコーについてどれくらい知っていますか?
    • 4. "" (二重引用符) と (一重引用符) の違いは何ですか?
    • 5. var=value?と エクスポート はどう違いますか?
    • 6. exec とsource の違いは何ですか?
    • 7. ( ) と { } の違いは何ですか?
    • 8.

    • 9. * の違いは何ですか?

    • 10. && と || の違いは何ですか?

    • 11. > と e949b43d1f4ace44a25c0420de117b2f 与 c01b8772d0f6397290d6d9199e3ce834 来改变送出的数据信道(stdout, stderr),使之输出到指定的档案。

      ls my.file no.such.file 1> file.out 2>file.err
      # 2>&1 就是将stderr并进stdout做输出
      ls my.file no.such.file 1> file.out 2>&1
      # /dev/null 空
      ls my.file no.such.file >/dev/null 2>&1
      
      cat < file > file
      # 在 IO Redirection 中,stdout 与 stderr 的管道会先准备好,才会从 stdin 读进资料。 
      # 也就是说,在上例中,> file 会先将 file 清空,然后才读进 < file , 
      # 但这时候档案已经被清空了,因此就变成读不进任何数据了

      12. 你要if还是case呢?

      # if
      echo -n "Do you want to continue?(Yes/No):"
      read YN
      if [ "$YN"=Y -o "$YN"=y -o "$YN"="Yes" -o "$YN"="yes" -o "$YN"="YES"];then
      echo "continue"
      else
      exit 0
      fi
      
      # case
      echo -n "Do you want to continue?(Yes/No):"
      read YN
      case "$YN" in
      [Yy]|[Yy][Ee][Ss])
      echo "continue"
      ;;
      *)
      exit 0
      esac

      13. for what? while与until差在哪?

      # for
      for ((i=1;i<=10;i++))
      do
       echo "num is $i"
      done
      
      # while
      num=1
      while [ "$num" -le 10 ]; do
       echo "num is $num"
       num=$(($num + 1))
      done
      
      # until
      num=1
      until [ "$num" -gt 10 ]; do
       echo "num is $num"
       num=$(($nu + 1))
      done
      • break 是结束 loop
      • return 是结束 function
      • exit 是结束 script/shell

以上がシェル スクリプトに関する知っておくべき古典的な 13 の質問の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はLinux中文社区で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。