shell编程基础之认识与学习BASH
shell编程基础之认识与学习BASH
发布时间:2016-12-28 来源:查字典编辑
摘要:1、认识Bash通过Shell将输入的指令与Kernel沟通,让Kernel控制硬件工作查看Shell:cat/etc/shell登录后预设...

1、认识Bash

通过Shell将输入的指令与Kernel沟通,让Kernel控制硬件工作

查看Shell:cat /etc/shell

登录后预设的shell类型记录在/etc/passwd中,与账户相关

命令别名:alias lm='ls -al' #注意有无空格

帮助:man bash

命令类型:type

复制代码 代码如下:

type ls # ls is aliased to `ls –color=auto'

type cat # cat is hashed (/bin/cat)

type cd # cd is a shell builtin

命令执行:

[Enter]:将[Enter]转义,按下后不执行,而是另起一行

2、Shell的变量功能

概念:同一变量,不同用户可以有不同值,所以可以用变量来代表此值,而不用将具体的值 写入程序,如$PATH

复制代码 代码如下:

显示变量:echo $PATH

设定变量:PATH=xxx #注意空格有无

扩充变量:PATH=$PATH:xxx

取消变量:unset MAIL

查看环境变量:env

查看环境变量及自定义变量:set

PS1:提示字符设定

自定义变量转环境变量:export

为什么要转成环境变量:因为子程序会继承父程序的环境变量

语系支持

查看系统支持的语系:locale -a

查看与语系有关的变量:locale

键盘读取用户输入read: read atest #将用户输入读入atest变量

声明变量类型 declare: declare -i sum=100+50

3、命令别名与历史命令

别名

复制代码 代码如下:

alias lm='ls -al | more'

unalias lm

历史命令

复制代码 代码如下:

history

4、Bash shell的操作环境

指令执行时查找顺序

相对/绝对路径 -> alias -> bash内建 -> $PATH

bash配置文件

复制代码 代码如下:

login shell/non-login shell

login shell: 进入shell时需要输入账号密码

non-login shell: 通过图形界面登录,再启动shell时无需输入账号密码

配置文件

复制代码 代码如下:

login shell:

/etc/profile :系统整体设定

以下三个文件按顺序,如果存在,就读取,后面的就不再读取

~/.bash_profile

~/.bash_login

~/.profile

通配符

复制代码 代码如下:

* : 0到无穷个字符

? : 一个字符

[]: [abc] # a or b or c

[-]: [0-9] # 0 到 9

[^]: [^abc] # 不是a,b,c的一个字符

5、数据流重导向

复制代码 代码如下:

> :覆盖

>>:累加

/dev/null:接收信息但不显示

依次执行:cmd1,cmd2,cmd3

根据上一条执行结果确定下一条

cmd1 && cmd2

cmd1 || cmd2

6、管线命令

复制代码 代码如下:

ls | less

cut:同一行数据分割

echo $PATH | cut -d ':' -f 5 #以':'分割,第5个数据

grep:如果一行里有需要的信息,就返回这一行

sort:排序

uniq:重复内容只显示一次

wc:统计单词数

tee:双向重定向

tr:删除或替换数据

col:转化为纯文本

join:将两个文件中相关信息放在一起

paste:将两行并在一起,中间用[Tab]分开

expand:将[Tab]转为空格

split:将大文件传为小文件

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新linuxshell学习
热门linuxshell学习
脚本专栏子分类