shell基础篇(一)从hello world开始,shell基础篇


前记:这里是我做的shell笔记;接下来会提供一系列。

Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本。Unix/Linux上常见的Shell脚本解释器有bash、sh、csh、ksh等,习惯上把它们称作一种Shell。我们常说有多少种Shell,其实说的是Shell脚本解释器。

至于这几种脚本解释器的介绍与区别;说白我也不清楚;自己查资料去吧;其实知不知道并不是很重要。这并不影响你会不会shell。

1. 新建一个文件例如lottu01.sh,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好。还是从"hello world"开始吧。

#!/bin/bash
echo "hello world !"

 注解:“#!” 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell。我就用bash吧
echo:是shell中的输出命令;把其后面的字符串输出到屏幕上。--这也是大家都知道的。

2. 运行脚本

$chmod +x lottu01.sh  #给脚本执行权限
$ ./lottu01.sh
hello world !

 注意,一定要写成./test.sh,而不是test.sh。

直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有$HOME/bin, $HOME/sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用. /test.sh告诉系统说,就在当前目录找。
当然也可以写test.sh。做如下操作
cp lottu01.sh ../bin/     # ../bin是当前用户home目录的bin下面。这个大家别误解了。
再去测试下 lottu01.sh是否OK。

$cp lottu01.sh ../bin/
$ lottu01.sh 
hello world !

 3. 说说read命令

 刚刚说的echo是shell中的输出;那么输入呢;就说说read吧。--这个在以后章节会详细讲解--read。

#!/bin/bash
# Author : lottu
# Copyright (c) li0924    
# start script
echo "please input your name ?"
read name
echo "HI, ${name}"

测试:
$ chmod +x lottu02.sh 
$ ./lottu02.sh 
please input your name ?
lottu                     --这里你输入的name。
HI, lottu 

【note】

1. 脚本第一行-#!/bin/bash;为脚本的解释器;当然也可以不写;当时你就必须这样执行
   /bin/bash script;
2. echo,read命令;这个到后面补充下。


问linux下编写一个输出hello world的C++文件 怎使用shell脚本语言执行这个 C++文件

将源文件保存为hello.cpp开始进行编译
$g++ -o hello hello.cpp
编译成功完成后,在当前路径下,生成一个名为hello的文件,然后执行
$./hello
在屏幕上,你将会看到打印结果:Hello,Linux.
说明:在默认情况下,编译成功完成后,会在当前路径下,生成一个名为a.out的文件,然后执行$./a.out便可打印结果,但通常可以通过选项-o来指定自己的可执行程序名称;
2.编译多个源文件
3.使用外部函数库
4.使用共享函数库和静态函数库
5.gcc选项详细描述
 

mac os shell脚本hello world

1) 可以用shell

新建一个a.sh,内容:
#!/bin/bash
echo 'hello world'

保存,运行如下命令:
chmod +x a.sh
./a.sh

2) 如果是部署到mac上,可以用aumator,里面有很多高级功能,可以把脚本包装成application。如果是在Mac上,建议用ActionScript。
 

相关内容