shell脚本第一课
#!/bin/bash
#文件名:test.sh
#除了第一行的井号表示脚本执行的解析器
#其他的井号均表示注释
echo "aaaaaaaaaaaaaaa"
echo "BBBBBBBBBBBBBBBB"
#echo "ccccccccccccccc"
echo "ddddddddddddddddd"
新创建的的shell脚本并没有执行权限,可以通过bash命令来运行,也可以更改脚本的权限之后在使用./test.sh来执行。注意./表示当前路径,请不要直接使用test.sh来试图执行脚本,如果没有加前面的./,解释器会去/bin目录下查找test.sh,而不是在当前目录查找到test.sh。于是就会出错
ubuntu@ubuntu:~$ test.sh
test.sh: command not found
ubuntu@ubuntu:~$ ./test.sh
bash: ./test.sh: Permission denied
ubuntu@ubuntu:~$ bash test.sh
aaaaaaaaaaaaaaa
BBBBBBBBBBBBBBBB
ddddddddddddddddd
ubuntu@ubuntu:~$ chmod a+x test.sh
ubuntu@ubuntu:~$ ./test.sh
aaaaaaaaaaaaaaa
BBBBBBBBBBBBBBBB
ddddddddddddddddd
ubuntu@ubuntu:~$
使用bash命令来执行shell脚本时,不需要在脚本中指定解析器,并且不需要脚本有执行权限
使用./test.sh来执行shell脚本时,需要在脚本中指定解析器,并且需要脚本有执行权限
shell脚本第一课的更多相关文章
- 1.2 位于Shell脚本第一行的#!
学习<shell脚本学习指南>一书,记录总结,便于自己回忆,希望对你有帮助! 2.4 自给自足的脚本:位于第一行的 #! 1.Shell脚本执行过程 当Shell执行一个程序时,会要求UN ...
- Shell入门第一课
Shell是用C语言编写的程序. 几种常见的shell:bash.sh.csh.ksh等 bash是linux的默认标准shell, 完全兼容sh sh 是unix的默认 标准shell ash 是l ...
- shell脚本学习第一课
shell是一种程序设计语言,是访问操作系统内核的服务. Linux的shell种类常见的有: Bourne Shell(/usr/bin/sh或/bin/sh) Bourne Again Shell ...
- Linux Shell 脚本学习第一天: 使用grep 命令,lsusb, ps -ef, 实现树莓派(Debian OS)时检测到依赖的USB设备启动后,启动终端自动执行shell脚本
1.应用背景: 无人监测的设备,常需要设置应用程序开机启动,程序启动前需要保证调用的设备先启动,运行环境先启动. 2.test.sh部分源码 #!/bin/sh #查看桌面是否启动 while tru ...
- Linux python3安装/shell脚本/if/循环/函数
python3安装 安装过程 安装包: wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgztar -xvf Python-3.7 ...
- Shell脚本编写
1.什么是Shell脚本 Shell脚本是利用 shell 的功能所写的一个程序 program,这个程序是使用纯文本文件,将一些 shell 的语法与指令(含外部指令)写在里面, 搭配正则表达式.管 ...
- 在shell脚本中使用alias
Linux shell有交互式与非交互式两种工作模式.我们日常使用shell输入命令得到结果的方式是交互式的方式,而shell脚本使用的是非交互式方式. shell提供了alias功能来简化我们的 ...
- shell脚本编程基础
最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础 shell脚本是利用shell的功能 ...
- Shell脚本学习 - 基本内容以及数据格式
为了捞取日志,自己用python写了一些东西,大致套路就是读取写入文件的操作,放到linux上跑.实际使用时发现要操作的文件有时比较大,直接打开文件找需要的东西可能会有一些效率问题.所以学习一下she ...
随机推荐
- Django之form表单认证
Model常用操作: - 参数:filter 三种传参方式 - all(得到的是列表),values(字典),values_list(元祖) [obj(id,name,pwd,email),obj(i ...
- 关于对浏览器发送POST请求的一点研究
网上对与HTTP的Method,GET和POST的区别,说得毕竟详细.然后提到一点,说浏览器对两者的还有一个比较容易让人忽略的区别就是:POST会分2次发送,而GET只1次. GET发送1次,这个没什 ...
- 【转】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
转载地址:http://blog.csdn.net/ouyang_peng/article/details/51168072 Android 设备的CPU类型(通常称为”ABIs”) x86: 平板. ...
- expdp 高版本导入到低版本
低版本 往 高版本 导入,导出的时候不用加version : 高版本往低版本的时候 需要加 version expdp version (往低版本的时候 需要加 version 版本号是 impdp ...
- PAT A1075 PAT Judge (25 分)——结构体初始化,排序
The ranklist of PAT is generated from the status list, which shows the scores of the submissions. Th ...
- https安全协议原理
那么什么是HTTPS? HTTPS(Hypertext Transfer Protocol Secure)是一种通过计算机网络进行安全通信的传输协议.HTTPS经由HTTP进行通信,但利用TLS来加密 ...
- C++多线程的使用
很多的时候会遇到多线程跑 ,接下来就写了一个 多线程的demo 废话不说直接上代码 #include <iostream> #include <pthread.h> //多线 ...
- spring-cloud-starter-feign 等jar无法reimport的解决方案
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> &l ...
- Subversion 1.8.9 ( SVN Client ) 安装最新版本的svn客户端
For CentOS7 Users: [WandiscoSVN] name=Wandisco SVN Repo baseurl=http://opensource.wandisco.com/cento ...
- 读《Top benefits of continuous integration》有感
看到一片文章<Top benefits of continuous integration>,这张图画的很棒.将整个CI流程各阶段,列举出来了. 作者在文章里面介绍了CI和TDD,以及采用 ...