linux随记

vim

  撤销上次操作 u

  set tabstop = 4 设置tab键为两个空格

  set noswapfile 不生成swap文件

  set ff可看到dos或unix的字样

ps  --no-headers    print no header line at all

单词边界

  转义的尖括号<..>用于匹配单词的边界
  grep “<the>” file.txt 之匹配the,不匹配them等含the的单词

变量扩展

默认变量

    ${parameter-default} 或 ${parameter-:default} 但parameter没有被声明就使用默认值
  当parameter被赋null时:-和-才会有区别

变量赋值测试

   1. : ${HOSTNAME?}
  echo $?
  用来测试HOSTANAME这个环境变量是否已被赋值

   2. : ${1?"Usage : $0 argument"}
  如果没有提供命令行参数的话, 那么脚本就在这里退出了

后台运行&

  当后台运行的命令有stdout的时候,需要敲ENTER才会结束挂起,在后台运行命令后加上wait命令可以解决这个问题,
将运行命令的输出重定向到其他文件也可以解决这个问题。

#!/bin/bash
#test.sh
ls -l &
echo "Done"

ls -l &
wait
echo "Done"

ls -l > /dev/null &
echo "Done"

  

  

原文地址:https://www.cnblogs.com/hana-alice/p/9238076.html