有选择的执行

有选择的执行

  • 例如:which cowsay>/dev/null || echo "not install cowsay"

  • 解析:which后面的cowsay>/dev/null为判断cowsay是否安装语句,已安装则返回0,未安装返回1,并将这个值赋给“ $?”(可通过echo $?查看);|| 表示如果$?为0,则执行后面的语句(echo "not install cowsay"),如果$?为1,则不执行后面的语句;|| 也可以替换成&&,效果与 || 相反,即$?为0;不执行,为1则执行。

管道

管道是一种通信机制,通常用于进程间的通信(也可通过socket进行网络通信),它表现出来的形式就是将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)。

wc命令

  • 简单小巧的计数工具
  • 行数 wc -l /etc/passwd
  • 单词数 wc -w /etc/passwd
  • 字节数 wc -c /etc/passwd
  • 字符数 wc -m /etc/passwd
  • 最长行字节数 wc -L /etc/passwd

  • wc命令与管道结合使用:$ ls -dl /etc/*/ | wc -l(统计 /etc 下面所有目录数)

你可能感兴趣的:(有选择的执行)