乙巳🐍年

acc8226 的博客

if else

和 Java、PHP 等语言不一样,sh的流程控制不可为空

在 sh/bash 里可不能这么写,如果 else 分支没有语句执行,就不要写这个else。

1.if

if 语句语法格式:

1
2
3
4
5
6
7
if condition
then
command1
command2
...
commandN
fi
阅读全文 »

1
vim test.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/bash

a=10
b=20

val=`expr $a + $b`
echo "a + b : $val"

val=`expr $a - $b`
echo "a - b : $val"

val=`expr $a \* $b`
echo "a * b : $val"

val=`expr $b / $a`
echo "b / a : $val"

val=`expr $b % $a`
echo "b % a : $val"

if [ $a == $b ]
then
echo "a == b"
fi
if [ $a != $b ]
then
echo "a != b"
fi
阅读全文 »

一、注释(#)
行首以 # 开头(除#!之外)的是注释。#!是用于指定当前脚本的解释器,我们这里为bash,且应该指明完整路径,所以为/bin/bash

当然,在 echo 中转义的 # 是不能作为注释的:

1
vim test.sh

输入如下代码,并保存。(中文为注释,不需要输入)

1
2
3
4
5
6
#!/bin/bash
echo "The # here does not begin a comment."
echo 'The # here does not begin a comment.'
echo The \# here does not begin a comment.
echo The # 这里开始一个注释
echo $(( 2#101011 )) # 数制转换(使用二进制表示),不是一个注释,双括号表示对于数字的处理
阅读全文 »

Z-shell(Zsh)是一种 Bourne 式的交互式 POSIX shell,以其丰富的创新功能而著称。Z-Shell 用户经常会提及它的许多便利之处,赞誉它对效率的提高和丰富的自定义支持。

Zsh 具有交互式制表符补全、自动文件搜索、支持正则表达式、用于定义命令范围的高级速记符,以及丰富的主题引擎等功能。这些功能也包含在你所熟悉的其它 Bourne 式 shell 环境中,这意味着,如果你已经了解并喜欢 Bash,那么你也会熟悉 Zsh,除此以外,它还有更多的功能。你可能会认为它是一种 Bash++。

用你的包管理器安装 Zsh。

在 Fedora、RHEL 和 CentOS 上:

1
sudo dnf install zsh

在 Ubuntu 和 Debian 上:

1
sudo apt install zsh
阅读全文 »
0%