您的位置:首页 > 运维架构 > Shell

shell 编程学习

2011-04-25 13:17 323 查看
Shell 其实就是一个解释执行命令的程序,

所谓shell编程其实就是用一定的语法将各种基本的命令组合起来,让shell程序去解释执行。
如果对windows的dos有了解,可以这样理解,其实shell脚本文件和.bat批处理文件差不多。
然而linux下的shell比起windows的dos强大很多,呵呵。
为了安全起见,创建一个普通的账号进行学习

]# useradd 17rumen

]# passwd 17rumen
然后使用 17rumen 这个用户登陆linux
bash只是其中的一个shell,还有其他的shell ,例如: sh ,tcsh, ksh 等等
查看当前使用使用的shell

echo $SHELL
我现在使用 centos 5.5 linux 默认就是使用 bash shell
Ubuntu10.10同样使用 bash ,以前的 redhat 9.0 应该也是的
//=====================================================

如何编写一个 shell脚本 ? 使用 vi/vim 编辑器,
vi my_01.sh
echo "hello,开始学习shell脚本编程"
保存退出 :wq ,要输入中文汉字,在putty设置 UTF-8 即可
但是这个脚本没有权限执行,我们需要对这个文件添加一个权限
[17rumen@localhost ~]$ ./my_01.sh

-bash: ./my_01.sh: Permission denied
给当前用户添加一个执行的权限

chmod u+x my_01.sh
bash my_01.sh

这样就指定使用bash shell 来执行脚本
不过我们一般不这样做, 我们一般在脚本文件最开头指定 #!/bin/bash
//=====================================================

关于 PATH设置当前路径 , 修改之前建议大家先做一个备份
[17rumen@localhost ~]$ my_01.sh

-bash: my_01.sh: command not found
[17rumen@localhost ~]$ echo $PATH

/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/17rumen/bin
echo $PATH
ls /bin
PATH=$PATH:.
这只是临时的修改, 一旦重启,重新登陆 就无效。
要永久性的修改, 就要对一个文件进行修改
vi /etc/profile 在最后添加下面两行
PATH=$PATH:.

export PATH
保存退出
使用 source 命令, 让profile马上生效

source /etc/profile

学习内容: vi/vim 操作使用
直接输入 vi 可以看到 版本信息
重点: [INSERT]输入模式 和 命令模式 的切换
VIM - Vi IMproved

version 7.0.237
按 [Esc]键 切换到 命令模式
:w mytest.txt 保存文件名

:q 退出
:q! 强制退出
---------------------------------

我们新建一个文件 并且进行编辑
一般使用 vi + 一个文件名
编辑完毕就 :wq 保存并且退出
-------------------------------
在网上看到一些命令大全 , 我这里只演示一下 我常用的
输入模式和命令模式的切换,配合一般键盘上的功能键,
例如 方向键、[Delete]键 等等,基本上可以操作 vi
对于要求不高的用户,并不需要用太多一些命令。
对于我们学习shell脚本的来说, 一些简单常用操作 已经足够了,

如果以后发现不够用的话,可以查vi相关文档。
插入文本类命令

i 在光标前

I 在当前行首

a 光标后

A 在当前行尾
删除命令

x 删除当前光标所在的字符

dd 删除当前整行
搜索命令

/pattern 从光标开始处向文件尾搜索pattern

?pattern 从光标开始处向文件首搜索pattern

n 在同一方向重复上一次搜索命令

N 在反方向上重复上一次搜索命令
屏幕翻滚类命令,上一页 下一页的显示

Ctrl+f: 向文件尾翻一屏

Ctrl+b: 向文件首翻一屏
显示行号

:set nu

取消

:set nonu
//====================================================
对于不同用户设置不同的vim配置, 可以修改 ~/.vimrc 如果没有这个文件,可以创建一个。
例如我想关闭语法高亮显示,还有显示行号 然后加入下面两行
syntax off

set nu
搜索时候的高亮显示:

set hlsearch

加上下面的语句就不会有高亮显示:

set nohlsearch
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: