shell study diary
i am learning shell,so i wrote the problem i have met and the problem
we must pay attention to .learning shell is a good sense so it's is
very interesting.i am interested in it.
在shell中如果是在语句中出现单引号双引号等平时以成对出现的符号的我们就
要注意一点如果是单个出现那么我们要把整个语句用双引号引起来否则会出现语
法错误例如:
#/bin/bash
echo what is your name
read my_name
echo hello $my_name -i hope you're well
在这个例子中如果没有在hello句中加双引号那么就会报错的“hello $my_name
-i hope you're well”当变量中含有多个单词时我们在使用时我们在引用变量
是要用双引号将变量引起来
#!/bin/bash
echo " Please input you name"
read my_name
echo my_name is $my_name
export my_name
cd /root
touch ${my_name}.bak
exit 0
如果用户名有多个单词组成那这个脚本将不能很好的进行工作如果用双引号引起
来那么就能正常工作呀
#!/bin/bash
echo " Please input you name"
read my_name
echo my_name is $my_name
export my_name
cd /root
touch "${my_name}.bak"
exit 0
read的用法:read 可以用来提示用户输入你定义的变量这是一个交互式命令和
echo不一样echo只是一个单纯的显示命令没有其他的作用。
还有在这里说一下shell中的单引号和双引号的作用双引号主要是防止通配符的
扩展而单引号是一个防止任何扩展的命令另外双引号还有化个体为整体的作用即
将多个单词组成一句话的作用
{}的作用是在如果变量名后边有东西那么防止变量被shell误解所以我们要用
{}将其引起来(主要是$只能跟变量名如果后边有其他的都会被认为是变量名
所以有其他的东西很容易被误解所以可以用{}引起来)
开头的/bin/bash是说明shell的运行环境在这个脚本中定义的变量只能用在这个
脚本中如果没有被export输出
shell 的调试sh 常用的调试命令sh -x 脚本名称 (这个只是显示一个脚本的所
有变量)
sh -n (这个只是显示一个脚本的语法错误这在脚本调试时很有作用如果没有任
何输出则说明是没有任何的语法错误可以很好的使用的这个命令要比其他的命令
好用的多利用他可以很快的找到存在的语法错误)
我们可以用source和.来查看使脚本起作用source和.
一种令人不可思议的错误:当你在脚本中使用一个未声明的变量是他会即不报错
也不执行我门可以用“echo 变量名 is $变量名”的形式 显示这个变量的值来
解决这样的问题(使用未生命的变量的问题)
阅读(742) | 评论(0) | 转发(0) |