linux 命令sh(linux安装sh文件命令)
大家好,今天来为大家分享linux 命令sh的一些知识点,和linux安装sh文件命令的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
linux 命令中的sh是什么意思
1、sh是linux中运行shell的命令,是shell的解释器,shell脚本是linux中壳层与命令行界面,用户可以在shell脚本输入命令来执行各种各样的任务。
要运行shell脚本,首选需要给shell脚本权限,这里里以hello.sh文件为例,首先需要按下“crtl+shift+T”打开终端窗口:
2、接着先给“hello.sh”文件添加x权限chmod u+x hello.sh
3、输入“sh hello.sh”就开始执行shell脚本了,此时在终端中就输出了“hello!”的字样。以上就是用sh执行shell脚本的简单演示,当然Shell是一个功能相当强大的编程语言,有着易编写,易调试,灵活性较强的特点:
Linux 脚本 sh 和 ./ 的区别
区别只有一点:
sh表示脚本默认使用sh脚本解释器。
未指定脚本解释器默认为./。
具体解释:
使用“./”执行脚本,对应的xxx.sh脚本必须要有执行权限。
使用“sh”执行脚本,对应的xxx.sh没有执行权限,亦可执行。
当脚本开头使用#!设置使用的shell类型时,使用“./”执行脚本时,则使用“#!”标志的shell执行脚本;若无使用“#!”标记,则使用系统设置的默认shell执行脚本。
扩展资料:
举例:
登录用户root查看权限:
-rwx—— 1 root root
执行这个shell脚本:
./test成功。
sh test成功。
去掉执行权限x:
-rw——- 1 root root 17 2011-09-22 23:33 test
执行这个shell脚本。
./test失败(-bash:./test: Permission denied)。
sh test成功。
Linux中的sh命令的详细解释
linxu下的sh命令相当于是shell命令语言的解释器。下面由我为大家整理了linux的sh命令的详细解释的相关知识,希望对大家有帮助!
一、Linux中的sh命令的详细解释
sh命令是shell命令语言解释器,执行命令从标准输入读取或从一个文件中读取。通过用户输入命令,和内核进行沟通!Bourne Again Shell(即bash)是自由软件基金会(GNU)开发的一个Shell,它是Linux系统中一个默认的Shell。Bash不但与Bourne Shell兼容,还继承了C Shell、Korn Shell等优点。
语法
bash [options] [file]
选项
-c string:命令从-c后的字符串读取。
-i:实现脚本交互。
-n:进行shell脚本的语法检查。
-x:实现shell脚本逐条语句的跟踪。
二、Linux中的sh命令的具体例子
使用-x选项跟踪脚本调试shell脚本,能打印出所执行的每一行命令以及当前状态:
[root@AY1307311912260196fcZ satools]# sh-x check_ssh_login.sh
+ DEFINE=30
+ cat/var/log/secure
+ awk'/Failed/{++ip[$(NF-3)]} END{for(i in ip) print i"="ip[i]}'
++ cat/root/satools/black.txt
+ for i in'`cat/root/satools/black.txt`'
++ echo 121.42.0.16=1427
++ awk-F='{print$1}'+ IP=121.42.0.16
++ echo 121.42.0.16=1427
++ awk-F='{print$2}'
+ NUM=1427
+'[' 1427-gt 30']'
+ grep 121.42.0.16/etc/hosts.deny
+'[' 1-gt 0']'
+ echo sshd:121.42.0.16
+ echo vsftpd:121.42.0.16
+ for i in'`cat/root/satools/black.txt`'
++ echo 121.42.0.72=276
++ awk-F='{print$1}'
+ IP=121.42.0.72
++ awk-F='{print$2}'
++ echo 121.42.0.72=276
+ NUM=276+'[' 276-gt 30']'
+ grep 121.42.0.72/etc/hosts.deny
+'[' 1-gt 0']'
+ echo sshd:121.42.0.72
+ echo vsftpd:121.42.0.72
三、Linux中对.sh文件的操作命令
1、创建test.sh文件
touch test.sh
2、编辑sh文件
vi test.sh
3、保存退出
敲击esc,然后输入:wq,回车退出
4、添加可执行权限,当然默认就是可执行的。
chmod+x test.sh
5、运行文件
(1)./test.sh
(2)sh test.sh
6、删除文件
rm test.sh