`
ronry
  • 浏览: 39884 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

使用Ubuntu (3)-shell

阅读更多

1 Shell运算符

Shell提供大量的基本运算操作,在脚本中非常有用。Shell提供的算术表达式求值,执行运算展开式,此时使用得出的结果替换表达式。以下面的格式提供运算表达式:
$(( expression ))

可以使用 echo 在命令行显示运算展开式的结果,了解其工作情况。例如
                    
$ echo $((10+40))
50
$ echo $((5*(3+3)))
30

还可以将展开式分配给变量:

$ myvar = 10
$ echo $myvar
10
$ echo $(($myvar-2))
8
$ myvar = $(($myvar+5))
$ echo $myvar
15
$ result = $(($myvar-10))
$ echo $result
5

 

2 Shell浮点数计算

 

在shell脚本中,无法对浮点数进行比较,如:

max=0.1
min=0.01
if [ "$max" -gt "$min" ]
then
echo "YES"
else
echo "NO"
fi

这样的比较,运行后得到错误:
line 4: [: 0.1: integer expression expected

因为bc和awk都支持浮点数,可以使用bc进行处理:

max=0.1
min=0.01
if [ `echo "$max > $min" | bc` -eq 1 ]
then
    echo "YES"
else
    echo "NO"
fi

也可以写成if [ $(echo "$max < $min"|bc) -eq 1 ]

 

分享到:
评论

相关推荐

    ubuntu-shell基本指令操作

    3. `dpkg` 命令:dpkg 命令是 Debian 软件包管理器,用户可以使用该命令来安装、卸载和管理软件包。 4. `apt-cache` 命令:apt-cache 命令是 Ubuntu 的软件包缓存管理器,用户可以使用该命令来查看软件包信息、搜索...

    mongodb-linux-aarch64-ubuntu1804-4.2.5.tgz

    2. **解压文件**:使用tar命令解压下载的tgz文件: ``` tar -zxvf mongodb-linux-aarch64-ubuntu1804-4.2.5.tgz ``` 3. **创建数据目录**:MongoDB需要一个特定的目录来存储数据,通常为`/data/db`。如果该目录...

    scrt-sfx-9.5.0-3241.ubuntu22-64.x86-64.deb

    scrt-sfx-9.5.0-3241.ubuntu22-64.x86-64.deb

    scrt-9.5.0-3241.ubuntu22-64.x86-64.deb

    scrt-9.5.0-3241.ubuntu22-64.x86-64.deb

    ubuntu-them

    【标题】"Ubuntu-them" 指的是在 Ubuntu 操作系统中安装并使用名为 Zukitwo 的 Gnome 3 主题的过程。Gnome 3 是 Ubuntu 的一个流行桌面环境,它提供了用户友好的界面和丰富的自定义选项。Zukitwo 主题是一款设计精美...

    scrt-8.0.0-1063.ubuntu14-64.x86_64.deb,scrt-8.1.3-1382.ubuntu16-64.x86_64.deb

    3. **安装与使用**: Debian包(.deb)是Ubuntu的主要软件包格式,用户可以通过`dpkg`或`apt-get`命令进行安装。首先,需要使用管理员权限,并确保系统中已安装了`apt`和`gdebi`(用于处理依赖关系)。然后,可以...

    scrt-8.7.3-2279.ubuntu19-x86_64.deb

    在IT领域,远程访问和管理服务器是日常工作的重要环节,尤其在Linux环境中,SSH(Secure Shell)协议因其安全性而被广泛使用。SecureCRT是一款强大的SSH终端工具,专为系统管理员和开发人员提供了一个高效、安全的...

    mongodb-linux-x86_64-ubuntu1604-4.2.2.tgz

    3. **配置环境变量**:为了让系统能找到MongoDB可执行文件,我们需要将其路径添加到`PATH`环境变量中。可以在`~/.bashrc`或`~/.bash_profile`文件末尾添加: ``` export PATH=/path/to/mongodb-linux-x86_64-...

    Ubuntu deepin-wine 解决系统非中文语言环境时软件无法设置为中文

    英文版 Ubuntu deepin-wine qq 乱码问题 ...Ubuntu把wine的QQ、微信的系统托盘集成到状态栏 1 安装gnome-tweak-tool sudo apt install ...sudo apt-get install gnome-shell-extension-top-icons-plus gnome-tweaks

    scrt-sfx-9.4.3-3219.ubuntu20-64.x86-64.deb

    scrt-sfx-9.4.3-3219.ubuntu20-64.x86-64.deb

    mongodb-linux-x86_64-ubuntu1604-3.6.17.tgz

    对于 Ubuntu 16.04 用户来说,这是一个稳定且可靠的版本选择,因为 Ubuntu 16.04 (Xenial Xerus) 是一个长期支持(LTS)版本,提供到2021年的安全更新和技术支持。 在下载的压缩包 "mongodb-linux-x86_64-ubuntu1604-...

    阿里云服务器ECS Ubuntu16.04-64-bit学习之一:配置桌面(进阶-脚本一键执行)-相关文件

    3. **配置桌面环境**:在默认情况下,Ubuntu Server安装不包含图形化桌面环境。为了进行远程桌面访问或者图形化管理,我们需要安装如Gnome、Xfce或LXDE等桌面环境。这包括安装桌面环境的软件包,设置显示器分辨率,...

    mongodb-linux-x86_64-ubuntu1604-3.4.13.tgz

    在Ubuntu中,可以使用`sudo service mongod start`命令。同时,还可以使用`stop`、`restart`、`status`等命令管理MongoDB服务。 7. 客户端连接:MongoDB提供了一个交互式的shell客户端,称为`mongo`,通过运行`...

    scrt-sfx-9.1.0-2579.ubuntu20-64.x86_64.deb

    SecureCRT client for Windows, Mac, and Linux combines rock-solid terminal emulation with the strong encryption, broad range of authentication options, and data integrity of the SSH (Secure Shell) ...

    scrt-8.3.4.1699.ubuntu17-64.tar.gz

    本文将详细讲解如何在Ubuntu 17.04以及兼容的Manjaro系统中安装和使用secureCRT 8.3.4.1699。 首先,我们来看标题"scrt-8.3.4.1699.ubuntu17-64.tar.gz",这是一个针对64位Ubuntu 17.04系统的secureCRT版本的压缩包...

    scrt-7.3.5.903.ubuntu13-64.tar.gz

    1. 解压下载的文件:使用tar命令解压tar.gz格式的压缩包,如`tar -zxvf scrt-7.3.5.903.ubuntu13-64.tar.gz`。 2. 进入解压后的目录:`cd scrt-7.3.5`。 3. 执行安装脚本:通常会有一个名为`install.sh`或类似的...

    ubuntu-18.04-desktop-amd64

    1. **Unity到Gnome Shell的转变**:Ubuntu 17.10之前使用Unity桌面环境,但从18.04开始,Ubuntu转向了更为传统的Gnome Shell,提供更简洁、更符合传统桌面习惯的用户体验。 2. **LTS支持**:作为LTS版本,Ubuntu ...

    ubuntu-desktop.zip

    3. **软件中心**: Ubuntu Software Center(或现在的“Software”应用)允许用户方便地浏览、下载和安装各种应用程序,包括免费和付费软件。 4. **办公套件**: Ubuntu预装了 LibreOffice 套件,这是一套免费且开源...

    Ubuntu14下安装TP-LINK 无线网卡驱动-shell安装包版本

    3. 为适应Ubuntu 14.04,可能需要禁用内建的模块签名检查:`sudo nano /etc/modprobe.d/50-blacklist.conf`,然后在文件末尾添加`blacklist rtl8192cu`,保存并关闭编辑器(使用`Ctrl+X`,然后按`Y`确认保存,再按`...

    mongodb-linux-x86_64-ubuntu1604-3.2.22.tgz

    3. **更新软件包列表**: 更新你的系统软件包列表,以便包含MongoDB的最新信息: ``` sudo apt-get update ``` 4. **安装MongoDB**: 使用apt-get安装MongoDB的服务器组件: ``` sudo apt-get install -y ...

Global site tag (gtag.js) - Google Analytics