1. Mac 打开应用程序报 『你没有权限来打开应用程序"XXX"』的解决办法:
      sudo xattr -rd com.apple.quarantine /Applications/iTerm.app
      后面跟应用程序的路径。

    2. Openssl证书查看证书信息:
      openssl x509 -in certificate.pem -noout -text

    3. 生成SSL证书:
      openssl genrsa -out privatekey.key 2048 -days 3650
      openssl req -new -key privatekey.key -out certrequest.csr -days 3650
      openssl x509 -req -in certrequest.csr -signkey privatekey.key -out certificate.pem -days 3650
      生成JKS证书:
      openssl pkcs12 -export -out Cert.pfx -in certificate.pem -inkey privatekey.key
      keytool -importkeystore -v -srckeystore Cert.pfx -srcstoretype pkcs12 -destkeystore client.jks

    4. 已有标准分区的磁盘如何扩展到LVM格式?
      pvcreate /dev/sdb1
      vgextend centos /dev/sdb1
      lvextend -l +100%FREE /dev/centos/root
      xfs_growfs /dev/centos/root

    5. mac zsh 显示 git 分支的方法:
      vim ~/.zshrc
      function parse_git_branch() {

      git branch 2> /dev/null | sed -n -e 's/^\* \(.*\)/[\1]/p'

      }
      setopt PROMPT_SUBST
      export PROMPT='%F{grey}%n%f %F{cyan}%~%f %F{green}$(parse_git_branch)%f %F{normal}$%f '

    6. Ubuntu终端显示代码库分支名:
      ~/.bashrc

      force_color_prompt=yes
      color_prompt=yes
      parse_git_branch() {

      git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'

      }
      if [ "$color_prompt" = yes ]; then

      PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w \[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '

      else

      PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w $(parse_git_branch)\$ '

      fi
      unset color_prompt force_color_prompt

    7. 查看磁盘类型:
      cat /sys/block/sda/queue/rotational
      如果结果是0为固态盘SSD,如果结果是1为机械盘HDD。

    8. 测试磁盘写性能:
      time dd if=/dev/zero of=test.file bs=1G count=2 oflag=direct

    9. 编译ffmpeg:
      ./configure --prefix=/usr/local/ffmpeg --enable-shared --disable-static --enable-libx264 --enable-gpl --enable-pthreads --enable-libmp3lame --disable-yasm --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3

    10. VMWare、VirtualBox与Hyper-V冲突问题解决方案:
      https://blog.csdn.net/Dream_Weave/article/details/105730994

    11. !/bin/bash

      function log_start() {

      echo "[$(date +"%FT%T")] -------------------- start install $1 --------------------"

      }

      exec >> test.log
      log_start net-tools
      sudo yum install net-tools -y
      echo
      log_start vim
      sudo yum install vim -y
      exec >&2

    12. 在整个shell脚本中使用重定向到文件方法:
      exec >> test.log # 开始
      ......
      ......
      exec >&2 # 恢复

    13. 1.磁盘分区格式查看方法:Windows管理工具-->计算机管理-->磁盘管理-->右键属性-->卷-->写入(MBR/GPT)
      2.系统引导方式查看方法:Windows管理工具-->系统信息-->BIOS模式:UEFI/传统(Legacy)

    14. 传递字符串参数给shell脚本,当做数组:

      !/bin/bash

      first=($(echo ${@:1}))
      second=($(echo ${@:2}))

      for f in "${first[@]}"; do

      echo $f

      done
      for s in "${second[@]}"; do

      echo $s

      done

    15. Shell脚本中获取当前绝对路径的方法:
      cur_dir=$(cd -L $(dirname $0); pwd)

    16. Linux下tree命令中文字符显示乱码的解决方案:
      tree -L 3 -N
      即:在最后面跟上-N

    17. GitHub 限制最大只能克隆 100M 的仓库,为了能够克隆容量大于 100M 的仓库,我们还需要安装 Git Large File Storage,安装方式如下:
      git lfs install --skip-repo

    18. 如果你觉得访问 github.com 太慢,可以通过国内 GitHub 镜像网站来访问,配置方法如下:
      git config --global url."https://github.com.cnpmjs.org/".insteadOf "https://github.com/"

    19. Git 中,非 ASCII 字符叫做 Unusual 字符。这类字符在 Git 输出到终端的时候默认是用 8 进制转义字符输出的(以防乱码),但现在的终端多数都支持直接显示非 ASCII 字符,所以可以关闭掉这个特性,具体的命令如下:
      git config --global core.quotepath off

    20. 这几年用过不少ssh远程连接工具:
      第一年:XShell,收费
      第二年:SecureCRT,收费
      第三年:MobaXterm,收费
      第四年:FinalShell,免费、收费都有
      收费的基本上都是用破解版,最终还是用起了免费版。