Linux Shell编程简单知识

来源:互联网 发布:mac安装ttf字体 编辑:程序博客网 时间:2024/06/05 09:54

一、Bash Shell常用命令

1. type

命令格式:type 参数命令功能:判断一个命令是外部命令还是内部命令参数分析如下:
参数 作用 无 显示出命令是外部命令还是内部命令 -t File:外部命令;Alias:表示该命令别名所设置的名称;Builtin:表示该命令为Bash内置的命令功能 -p 显示完整文件名(外部命令)或显示内置命令 -a 在PATH变量定义的路径中,列出所有含name的命令

例子如下:

#type lsls is aliased to 'ls --color=tty'#type -t lsAlias#type -a lsls -is aliased to 'ls --color=tty'ls is /bin/ls

通过type命令,我们知道每个命令是否为Bash的内置命令。使用type搜索后面名称时,必须保证后面接的名称是可执行文件,否则不会显示。

2. echo

命令格式:echo arg功能:在屏幕上显示出由arg指定的字符串例子如下:
#vi 01.sh#!/bin/bashecho "hello world!"#./01.shhello world!

或直接在终端输入以下命令查看PATH环境变量

#echo $PATH

3. export

命令格式:1、export variable功能:Shell可以用export把他的变量向下带入到子Shell,使子进程继承父进程中的环境变量,但不能向上带入父进程·。命令格式:2、export功能:显示出当前所有环境变量和内容

4. read

命令格式:Read variable功能:从标准输入设备读入一行,分解成若干行,赋值给Shell程序定义的变量。例子如下:
#vi readtest.sh#!/bin/bashecho -e "Please ecter:%c"read xecho "you enter:$x" #./readtest.shPlease ecter:helloyou enter:hello

5. env

命令格式:env功能:显示环境变量及其内容

6. set

命令格式:env功能:显示环境变量及其内容

7. unset

命令格式:unset功能:从环境中删除变量,但不能删除shell本身定义的只读变量。
#!/bin/bashtest="Hello"echo $testunset testecho $test

第一次输出字符串“Hello”,但第二次只输出一个换行符。

8. grep

命令格式:grep 参数 string 目标文件功能:从一堆文件中查找一个特定的字符串,并将字符串所在行显示到终端或平台
  • 参数为-c :计算找到 ‘字符串’ 的次数
  • 参数为-i :忽略大小写的不同,所以大小写视为相同
  • 参数为-n :顺便输出行号
  • 参数为-v :反向选择,即显示出没有 ‘字符串’ 内容的行
  • 参数为-a :将 binary 文件以 text 文件的方式搜寻数据
#vi testfile001,one,red002,two,blue003,three,green#vi test.sh#!/bin/bashgrep -v "001" testfile#./test.sh002,two,blue003,three,green

二、简单Shell应用

1. 基本语法

程序必须以  #!/bin/bash  作为第一行,符号"#!"是用来告诉系统它后面的参数是用来执行该文件的程序。编译好脚本之后,如果要执行,必须赋予文件可执行的权限,使用以下命令:
#chmod 777 [文件]

在进行Shell编程时,以“#”开头的句子表示改行被注释了。

2. 创建过程

(1)创建文件:(创建文件名为test的脚本文件)
#vi test.sh#!bin/bash#This is a exampleecho "Hello world!"
(2)设置可执行权限:
#chmod 777 test.sh
(3)执行程序
#./test.shHello world!

                                             ***END!***
0 0
原创粉丝点击