ksh和bash区别】的更多相关文章

一.实践证明,在AIX上用的是ksh,linux上是bash sh或bsh,全名是bourne shell.它最早出现,是标准shell.后两者都兼容它. ksh和bash后续加入了历史记录,交互特性,数组,等新功能. ksh在unix上使用较多.比如hpux,AIX bash在linux上使用较多. 也可以用这些做命令跳到另一个shell,看个人习惯用哪个: jimmy-cao@jimmycao-ThinkPad-Edge:~$ sh $ bash jimmy-cao@jimmycao-Thi…
(1) 在ksh是,数组的index只能从0到1023,而bash中没有这样的限制. (2) ksh与bash初始化数组的语法不同: 如下所示 icymoon# ksh icymoon# set -A array 1 2 3 4 5; echo ${array[3]}; 4 icymoon# bash icymoon# array=(1 2 3 4 5); echo ${array[3]}; 4 icymoon# array=([0]=1 [3]=2 [2]=3); echo ${array[3…
在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本.目前研发送测的shell脚本中主要有以下两种方式:(1) #!/bin/sh(2) #!/bin/bash以上两种方式有什么区别?对于脚本的实际运行会产生什么不同的影响吗? 脚本test.sh内容:#!/bin/shsource pcy.sh #pcy.sh并不存在echo hello执行./test.sh,屏幕输出为:./test.sh: line 2: pcy.sh: No such file or directory由此…
[From] http://blog.51cto.com/meiling/1826201 在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本.目前研发送测的shell脚本中主要有以下两种方式: (1) #!/bin/sh(2) #!/bin/bash 以上两种方式有什么区别?对于脚本的实际运行会产生什么不同的影响吗? 脚本test.sh内容: #!/bin/shsource pcy.sh #pcy.sh并不存在echo hello 执行./test.sh,屏幕输出为:./tes…
查看系统支持的shell: cat  /etc/shells 查看现在使用的shell:  修改默认shell: 另外,修改了系统默认shell之后不会立即生效,之后再次登录系统修改的shell才会生效. 具体解释请参考:http://blog.chinaunix.net/uid-20722281-id-160012.html…
/bin/bash (就是 Linux 预设的 shell, 是现在很多Linux的发行版中默认的shell,综合了其他shell的很多优点.)/bin/ksh (Kornshell 由 AT&T Bell lab. 发展出來的,相融于 bash)/bin/tcsh (整合 C Shell ,提供更多的功能) /bin/csh (已经被 /bin/tcsh 所取代) /bin/zsh (基于 ksh 发展出來的,功能更強大的 shell)现在一般的shell 是使用的bash >带有命令自动…
原文地址  stackexchange:What is the exact difference between a 'terminal', a 'shell', a 'tty' and a 'console'? (原文wiki链接在翻译中替换为百度百科链接.) A terminal is at the end of an electric wire, a shell is the home of a turtle, tty is a strange abbreviation and a con…
本节内容 1.  什么是shell 2.  命令的优先级 3.  元字符 4.  登录shell与非登录shell 一  什么是shell shell一般代表两个层面的意思,一个是命令解释器,如bash:另外一个就是shell脚本 命令解释器shell的发展历史 sh -> csh -> ksh -> tcsh -> bash,重点学习bash 二  命令的优先级 ==> alias ==> Compound Commands ==> function ==>…
终端与控制台的区别? 最近开始接触Linux,终端.虚拟终端.shell.控制台.tty等概念让我很混乱,有必要认识清楚. 今天看到有人问终端和控制台的区别,而且这个问题比较有普遍性,因此想抽出一点时间来解释一下这两个术语的区别. 终端,英文叫做terminal ,通常简称为term ,比如我们在X下的xterm. 控制台,英文叫做console.  要明白这两者的关系,还得从以前的多人使用的计算机开始. 大家都知道,最初的计算机由于价格昂贵,因此,一台计算机一般是由多个人同时使用的. 在这种情…
最近在将ksh转成bash运行的时候出现了问题.代码如下: echo $1 | sed 's/\..*$/''/' | read FILE_NAME 当使用ksh执行的时候没有问题,FILE_NAME能获取到正确的值.但当使用bash执行时,FILE_NAME值为空. 找了半天也不知道什么原因,最后找到了一种解决方法.代码如下: read FILE_NAME <<< ` echo $1 | sed 's/\..*$/''/' ` 上面的代码有两点需要注意: ①使用了 <<&l…