关于ubuntu下 shell

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ubuntu下 shell相关的知识,希望对你有一定的参考价值。

我在centos编写的脚本如下:
#! /bin/bash
read n
while ([[ -n $n ]] && [[ 1 -gt $n ]] || [[ $n -gt 7 ]] )
do
read n
done
在ubuntu下 [[ 语法错误,我该如何修改?我想改为用 until,有大神能解答一下吗?谢谢了

    在Linux的所有shell中,是没有“数字”这一种类的,在Linux shell中,只存在“字符串”这一数据类型。

    不是所有的shell都支持[[ ]],如果你用的是Ubuntu,使用的是sh *.sh 来执行脚本的话,其实是dash来执行的。可以 which sh下查看。

    [[ 是关键字,而 [] 等同于test 命令。


参考技术A 先确认一下/bin/bash是否存在,如果存在就把[[改成[试试追问

[[ 改成 [ 就失去 [[ 的作用了哇,我是因为read了非数字,就抱错误;/bin/bash存在的

在ubuntu中如何安装shell 脚本程序

最近我用downthemall下载jdk时,发现下载的jdk文件是shell脚本类型的,很郁闷,不知道怎么安装,不知哪位高手能帮一下忙?急急急

jdk源里有

脚本就chmod 755 XX
sudo ./XXX

ubuntu下最好不要用sh XX来运行脚本
ubuntu默认的system shell为dash,只有严格符合posix标准的脚本才能用sh XX来运行
否则用bash XX或./XXX比较好
参考技术A 最好是通过源里面安装。只要安装sun的就可以了。而下载的估计还是需要配置,chmod +x xxx.run 然后在sudo sh xxx.run 参考技术B sh shell脚本名

以上是关于关于ubuntu下 shell的主要内容,如果未能解决你的问题,请参考以下文章

关于linux命令大全里没有fuser

关于ubuntu刚开始安装时root密码的问题

关于使用 snappydata/bin> ./spark-shell.sh 脚本启动定位器的问题

关于在ubuntu下出现的域名无法解析问题

关于Windows下GRUB引导启动ubuntu

关于Ubuntu环境下配置GLPK