Ⅰ linux 怎么看当前用的是什么shell
查看所有可以使用的shell可以cat /etc/shells ,查看当前登录系统的所使用的shell可以 echo $SHELL ,这是系统环境中的一个变量。
Ⅱ shell命令和linux命令一样么
当然不一样!
shell翻译为壳的意思,它是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面,shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,即shell
script,从而实现一些复杂的功能。
shell可以说是linux命令集的旅仿概称,属于命令行的人机界面,拆闷纤shell是一个用C语言编写的程序,它是用户使用linux的桥梁,shell既是一个命令语言,也是一个程序设计语言,其次,shell也指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
由此可见,shell相当于经过装饰的命令行,它与命令行一样,都能操作Linux;但是shell是面向过程的,相当于有了一定的逻辑和过程,而命令行只是单一的操作。
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命罩橘令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
shell与linux命令的区别:
1、直接在命令行执行,就是在当前的shell环境下执行,比如涉及到一些环境变量的时候,必须在当前shell环境里执行。
2、在脚本执行的话,会fork一个子进程,所有操作都在子进程中进行。如果涉及到一些在脚本里设置环境变量的东西,脚本结束了,环境变量就消失了,如果是修改环境变量的话,需要特别注意。
3、shell可以重复或批量地进行一些命令,你也可以把自己要重复执行的命令写到脚本里面执行,而命令行的话就需要一个一个的输入命令,比较麻烦。
Ⅲ linux 怎么进入shell编程模式
1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。
Ⅳ 什么是Linux的登录shell与非登录shell
Linux的登录shell与非登录shell的含义及区别:
1、含义:登录shell,指的是当用户登录系统时所取的那个shell,登录shell属于交互式shell。
登录shell将查找4个不同的启动文件来处理其中的命令,用户登录后,在终端上输入命令,shell立即执行灶蠢用户提交的命令,当用户退出后,shell也终止了。
非交互式:即shell与用户不存在交互,而是以shellscript的方式执行的,shell读取存放在文件中的命令,并且执行它们。当它读到文件的结尾EOF,shell也就终止了。
2、完整度不同:如果启动了一个bash shell而没有登入系统(如在CLI提示符中键入bash),则启动了一个交互式非登录shell。
交互式非登录shell执行/bashrc文件中的命令,在每次执行shell脚拆携本时,都会重新读取这个文件,所以是最完整的。
3、使用情况不同:登录shell的初始化文件(比如.bash_profile)通常会运行这个文件。这样,登录shell和非登录shell都可以使用.bashrc中的命令。
4、登陆方式不同:登录 shell 需要用户名、密码登录后进入的 shell,或者通过--login选项生成的 shell 。
非登录 shell 是指不需要输入用户名和密码即可打开的 shell,比如输入命令bash或者sh就能进入一个全新的非登录 shell,在 Gnome 或 KDE 中打开一个 “terminal” 窗口,也是一个非登录 shell。
5、数值不同:
查看$0的值,登录shell返隐御陪回-bash,而非登录shell返回的是bash。
需要注意的是:执行exit命令,退出的shell可以是登录或者非登录shell;执行logout命令,则只能退出登录shell,不能退出非登录shell。
(4)linux当前shell扩展阅读:
登陆shell通常指的是:
1、用户通过输入用户名/密码(或证书认证)后启动的shell;
2、通过带有-l|--login参数的bash命令启动的shell。
例如,系统启动、远程登录、使用su-切换用户、通过bash--login命令启动bash等。
而其他情况启动的shell基本上就都是“非登陆shell”了。
例如,从图形界面启动终端、使用su切换用户、通过bash命令启动bash等。
Ⅳ linux在当前目录运行shell脚本文件test.sh的命令是
假如一个腊肆文件名为test.sh的shell脚本,cd切换到该文件袭局神的目录,然后输入命令:在文件名前面加“./拍亏”。另外...
Ⅵ linux shell 重启命令
#把重启次数保存到文件:如:/tmp/reboot.txt
#!/bin/sh
sleep45
#文件file:保存重启次数
file="/tmp/reboot.txt"
if[-f$file]
then
num=`cat$file`
else
num=0
fi
#重启次数累加
((num+=1))
#固化到文件
echo$num>$file
reboot
#end
希望能够帮助到你,你的好评是我前进的动力,谢谢!
Ⅶ linux常用的shell有哪些
最常用的当然是bash这个shell了,不需要多说,因为大部分Linux发行版都默认是这回个shell;还有C shell用户也很多,答因为它的语法和C语言有点像;还有一个ash,念做A Shell,在智能路由器系统OpenWrt、LEDE上作为默认shell,话说玩路由器Linux系统OpenWrt的也不少啊,好多硬件论坛上都知道这个系统,所以ash也算是常用的Linux shell吧。
Ⅷ Linux Shell 教程——想玩转linux就请一直看下去
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。
Shell 在线工具
Shell 脚本(shell script),是一种为 shell 编写的脚本程序。
业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念。
由于习惯的原因,简洁起见,本文出现的 "shell编程" 都是指 shell 脚本编程,不是指开发 shell 自身。
Shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
Linux 的 Shell 种类众多,常见的有:
在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh ,它同样也可以改为 #!/bin/bash 。
#! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序。
打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展名为 sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用 php 写 shell 脚本,扩展名就用 php 好了。
输入一些代码,第一行一般是这样:
#!/bin/bash
echo "Hello World !"
运行实例 »
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
echo 命令用于向窗口输出文本。
1、作为可执行程序
将上面的代码保存为 test.sh,并 cd 到相应目录:
注意,一定要写成 ./test.sh ,而不是 test.sh ,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。
2、作为解释器参数
这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:
这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。