步骤:
1新建一个sh文件,touch testsh
2
编辑testsh文件,vi testsh
然后键入i,输入内容,
#!/bin/sh必须放在第一行
如图MongoDB的启动命令
然后键入esc
键入:wq保存退出
3给testsh赋予可执行权限,chmod +x testsh
4执行脚本/testsh,即可执行脚本
5也可以通过sh testsh 执行脚本
扩展资料:
Linux是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的 *** 作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络 *** 作系统。
Linux *** 作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的 *** 作系统。
脚本(Script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
Linux系统的shell作为 *** 作系统的外壳,为用户提供使用 *** 作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。
shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。
shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传给Linux核心。
参考资料:
编写一个简单的shell程序,要求如下:
一:这个shell必须支持以下内部命令:
1cd<directory>--把当前目录改变为<directory>,如果没有<directory>参数,则显示当前目录。如果该目录不存在,则给出错误提示。这个命令可以用来改变PWD环境变量。
2clr--清屏。
3dir<directory>--列出目录<directory>的内容。
4environ--列出所有的环境变量。
5echo<comment>--在屏幕上显示<comment>并换行。
6help--显示用户手册,并且使用more命令过滤。
7pause--停止shell直到按下回车。
8quit--退出shell。
9shell的环境变量应该包含shell=<pathname>/myshell,其中<pathname>/myshell是可执行程序shell的完整路径。
二:其他的命令行被解释为程序调用,,shell创建并执行这个程序,并作为自己的子进程,程序的环境变量必需包含以下条目:
parent=<pathname>/myshell,
三:shell必须能够从文件中提取命令行输入,例如shell使用以下命令行被调用:
programname arg1 arg2 <inputfile> outputfile
四:shell必须支持i/o重定向,stdin和stdout或其中之一。例如命令行为
programname arg1 arg2 <inputfile> outputfile
使用arg1和arg2执行程序programname,输入文件流被替换为inputfile,输出文件流被替换为outputfile。
stdout重定向应该支持以下内部命令:dir,environ,echo和help。
使用输出重定向是,如果重定向字符是>,则创建输出文件,如果存在则覆盖之;如果重定向字符为 >>则也会创建输出文件,如果存在则添加到文件 尾。
五:shell必需支持后台程序执行。如果在命令行后面添加字符&,在加载完程序后需要立刻返回命令行提示符。
六:命令行提示符必需包含当前路径。
#!/bin/bash
echo "Input n:"
read n
s=0
for (( i=0;i<n+1;i=i+1 ))
do
let s=$s+$i
done
echo "1+2++n = $s(n=$n)"
(1)编写shell程序fileback:
#!/bin/sh
DIRNAME=`ls
/root
|
grep
bak`
if
[
-z
"$DIRNAME"
]
;
then
mkdir
/root/bak
cd
/root/bak
fi
YY=`date
+%y`
MM=`date
+%m`
DD=`date
+%d`
BACKETC=$YY$MM$DD_etctargz
tar
zcvf
$BACKETC
/etc
echo
"fileback
finished!"
(2)编写任务定时器:
echo
"0
0
1
/bin/sh
/usr/bin/fileback"
>;
/root/etcbakcron
crontab
/root/etcbakcron
或使用crontab
-e
命令添加定时任务:
0
1
/bin/sh
/usr/bin/fileback
Shell编程请查看《Linux就该这么学》第四章内容。
编写好的shell脚本(如:test),可以采取两种方式进行运行:\x0d\一、 $ sh test\x0d\一般不采用这种调用方式,尤其不采用“sh<test”的调用方式,因为这种方式将禁止shell读取标准输入。\x0d\也可以采用 $ ksh test\x0d\这种方式要求shell具有“可读”的访问权限。\x0d\二、直接运行可执行的shell脚本之前,首先应使用下列chmod命令,把shell脚本文件设置为可执行的文件。\x0d\chmod 755 test(除文件属主可写之外,每个用户均具有读和可执行的访问权限)\x0d\chmod +rx test(同上)\x0d\chmod u+rx test(只有文件属主具有读和执行的访问权限)\x0d\按照上述要求设置shell脚本文件的访问权限后,可采用下列方式,直接运行shell脚本了。\x0d\1、test(如果命令检索路径包含当前目录)\x0d\2、/test(如果命令减缩路径不包含当前目录)\x0d\说明: sh test 方式调用一个shell叫蹦可能会禁止某些shell特定的扩展功能,因而可能引起脚本无法正确执行。
shell是一个命令处理器(commandprocessor)——是一个读入并解释你输入的命令的程序。除了是一个命令中断器以外,shell还是一个程序设计语言。你可以编写shell可以解释的程序(被称为源程序),这些源程序可以包含shell程序设计命令等等。shell除了解释命令以外,还有其他工作,它也可以配置和编程。shell拥有自己的语言允许用户编写程序并以一种复杂方式运行。shell编程语言具有许多常用的编程语言的特征,例如:循环和控制结构等。用户可以生成像其他应用程序一样复杂的shell程序。
补充说明:简单的说:shell是一个交互性命令解释器。shell独立于 *** 作系统,这种设计让用户可以灵活选择适合自己的shell。shell让你在命令行键入命令,经过shell解释后传送给 *** 作系统(内核)执行。
以下是shell功能的一个汇总:
查找命令的位置并且执行相关联的程序。
为shell变量赋新值
执行命令替代
处理I/O重定向和管道功能
提供一个解释性的编程语言界面,包括tests、branches和loops等语句
1只能够输入Python命令。
在Python交互模式下输入Python代码,而不要输入系统的命令。
2在交互模式下打印语句不是必须的。
在交互模式下不需要输入完整的打印语句,解释器自动打印表达式的结果,但是在文件中则需要写print语句来打印结果。
3提示符的变换和复合语句。
当在交互模式下输入两行或多行的复合语句时,提示符会由>>>变成;如果要结束复合语句的输入并执行它,那么必须按下Enter键两次,复合语句才会被执行。
4交互提示模式一次运行一条语句。
当你想测试某一条命令的时候,交互模式是一个很好的测试方法,输入然后回车即可看到执行结果,非常方便,当然对于复合语句来说,只要最后按两次Enter键即可运行代码,看到执行结果。
具体如下:
1、简介
Linux *** 作系统是基于UNIX *** 作系统发展而来的一种克隆系统,它诞生于1991年的[Linux桌面]10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX类 *** 作系统,并且使用人数还在迅猛增长。
2、基本信息
Linux[2] *** 作系统是UNIX *** 作系统的一种克隆系统,它诞生linux系统于1991年的10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX类 *** 作系统,并且使用人数还在迅猛增长。
3、分区规定
设备管理在Linux中,每一个硬件设备都映射到一个系统的文件,对于硬盘、光驱等,IDE或SCSI设备也不例外。Linux把各种IDE设备分配了一个由hd前缀组成的文件;而对于各种SCSI设备,则分配了一个由sd前缀组成的文件。
以上就是关于怎么在linux下创建一个可运行脚本全部的内容,包括:怎么在linux下创建一个可运行脚本、编写一个简单的shell程序,判断系统中是否存在,如果存在将其删除、求编写linux shell 程序求和使用for语句创建一个shell程序,其功能是1+2+3+…+n.请高手们帮下忙!要可...等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)