zcl_ccc 发表于 2018-8-20 13:26:00

shell 脚本整理

  1、调试模式
  bash -xfilename.sh
  或
  在脚本中使用 set -x
  set -x 开启调试模式
  set +x 关闭调试模式
  组合起来控制调试模式的作用域
  2、使用&&和||代替if,简化脚本
  3、获取文件大小(单位B)(三个都可以,wc会带文件名)
  stat -c %s filename
  stat --print='%s\n' filename
  wc -c filename
  4、rsync备份
  windows备份(端口、模块名等在rsync.conf中定义)
  rsync --port=$PORT -vzrtopg --progress $user@$IP::$模块名 /local/file/path
  linux备份(无秘互通)
  rsync -avz '-e ssh -p $PORT' $IP@:$/file/path /local/file/path
  5、字符串处理
  cut处理行
-b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。  -c :以字符为单位进行分割。
  -d :自定义分隔符,默认为制表符。
  -f:与-d一起使用,指定显示哪个区域。
  -n :取消分割多字节字符。仅和 -b 标志一起使用。

  -3表示从开头删除到第三个字符,3-表示从第三个字符到结尾

  -c与-b功能类似,以字符为间隔符(对于中文,只能用-c处理)

  中文占的字节数不一样

  -d -f以域为单位处理

  6、文本处理
  文本处理使用grep、sed、awd来处理


  # sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
  7、获取文件路径、文件名
  dirname 和basename
  8、交集、并集

  9、显示多行或追加内容
  cat
页: [1]
查看完整版本: shell 脚本整理