#Shell 环境
#Shell 编程跟 java、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
#Linux 的 Shell 种类众多,常见的有:
#Bourne Shell(/usr/bin/sh或/bin/sh)
#Bourne Again Shell(/bin/bash)
#C Shell(/usr/bin/csh)
#K Shell(/usr/bin/ksh)
#Shell for Root(/sbin/sh)
#本教程关注的是 Bash,也就是 Bourne Again Shell,由于易用和免费,Bash 在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
#在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同样也可以改为 #!/bin/bash。
# #! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序。
# 下面是一个简单的shell脚本
#! /bin/bash
your_name="www.baidu.com" #变量 your_name 赋值
echo $your_name #输出变量 要在变量前加$,可以使用 $your_name 或 ${your_name}
for file in `ls /`;do #for循环 `ls /` 目录下的文件,并赋值给file ;
echo ${file} #在循环里输出 ${file}
done #结束循环
#readonly your_name #把变量变成只读,只读后变量不能重新赋值
your_name="www.aliyun.com" #重新赋值变量
echo ${your_name} #输出变量
#运行 Shell 脚本有两种方法:
#1、作为可执行程序
#将上面的代码保存为 test.sh,并 cd 到相应目录:
#chmod +x ./test.sh #使脚本具有执行权限
#./test.sh #执行脚本
#注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。
#2、作为解释器参数
#这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:
#/bin/sh test.sh
#/bin/php test.php
#这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。
#Shell 编程跟 java、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
#Linux 的 Shell 种类众多,常见的有:
#Bourne Shell(/usr/bin/sh或/bin/sh)
#Bourne Again Shell(/bin/bash)
#C Shell(/usr/bin/csh)
#K Shell(/usr/bin/ksh)
#Shell for Root(/sbin/sh)
#本教程关注的是 Bash,也就是 Bourne Again Shell,由于易用和免费,Bash 在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
#在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同样也可以改为 #!/bin/bash。
# #! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序。
# 下面是一个简单的shell脚本
#! /bin/bash
your_name="www.baidu.com" #变量 your_name 赋值
echo $your_name #输出变量 要在变量前加$,可以使用 $your_name 或 ${your_name}
for file in `ls /`;do #for循环 `ls /` 目录下的文件,并赋值给file ;
echo ${file} #在循环里输出 ${file}
done #结束循环
#readonly your_name #把变量变成只读,只读后变量不能重新赋值
your_name="www.aliyun.com" #重新赋值变量
echo ${your_name} #输出变量
#运行 Shell 脚本有两种方法:
#1、作为可执行程序
#将上面的代码保存为 test.sh,并 cd 到相应目录:
#chmod +x ./test.sh #使脚本具有执行权限
#./test.sh #执行脚本
#注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。
#2、作为解释器参数
#这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:
#/bin/sh test.sh
#/bin/php test.php
#这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。