clh899 发表于 2018-8-26 11:29:47

shell脚本之重定向、标准输入、输出、错误输出的使用

  linux    shell脚本
  大量重复执行的工作
  shell (Linux壳), 一类程序的名称
  文本文件-------> shell命令, /bin/bash提供逻辑控制语句,
  重定向符号的使用
  /dev/stdin标准输入设备(键盘)0
  /dev/stdout标准输出设备(显示器)1
  /dev/stderr标准错误输出设备(显示器) 2
  输出重定向符号
  > >>用于重定向标准输出
  # ls -ldh /etc/ > /tmp/1.txt
  # ls -ldh /tmp/ >> /tmp/1.txt
  2>2>>用于重定向标准错误输出
  # ls -ldh /asjdfklasjdlfasd 2> /tmp/1.txt
  &>同时重定向标准输出及标准错误输出
  特殊设备文件: /dev/null
  # ls -ldh /etc/ &> /dev/null
  输入重定向符号
  # tr 'a-z' 'A-Z' < /tmp/1.txt
  ABCDEF
  #
  # mail -s "test fstab" root@localhost < /etc/fstab
  输出信息:
  1echo
  # echo "请输入你的选择:"默认会打印换行符
  请输入你的选择:
  # echo -n "请输入你的选择:"
  请输入你的选择:#
  # echo -e "a\nbb\nccc"\n:回车   或者\r
  a
  bb
  ccc
  # echo -e "a\tbb\tccc"\ttab键
  abbccc
  #
  2printf
  # printf "hello world"
  hello world#
  3HERE DOCUMENT -----> 输出多行内容
  # cat1. 安装KVM
  > 2. 重置所有虚拟机
  > eof
  1. 安装KVM
  2. 重置所有虚拟机
  #
  双引号和单引号的区别:
  单引号: 所有字符会失云原有的含义
  双引号: 特殊字符会被转义
  如何处理交互式命令:
  # echo "redhat" | passwd --stdin tom &> /dev/null
  # echo -e "n\np\n1\n\n+500M\nw\n" | fdisk /dev/vdb &> /dev/null

页: [1]
查看完整版本: shell脚本之重定向、标准输入、输出、错误输出的使用