- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Shell自学笔记
Shell包括几种?
Bourne Shell,用于系统管理。$为提示符。
C Shell,加入命令行历史、别名、内建算法、文件名补全和作业控制。%为提示符
Korn Shell默认 提示符:$
Linux支持的 Shell
用:cat /etc/shells查看,有Bourne Again Shell(bash)和TC Shell(tcsh)等,默认为bash
3.什么是进程
进程是处在执行状态下,并可以用唯一的PID标识的程序。用ps/pstree命令显示进程。
4.切换Shell
chsh –s /bin/tcsh
5.每个Shell都有一个特别的内建变量用于保存最后一个命令终止时的状态,在TC Shell下是$status,在bash下是$?
6.改变所有权和权限
chmod命令。用于改变目录和文件的权限。权限组合的8种情况
10进制数字 2进制数字 权限 0 000 None 1 001 - -x 2 010 -w- 3 011 -wx 4 100 r- - 5 101 r-x 6 110 rw- 7 111 rwx r代表读权限,w表示写权限,x表示执行的权限。u表示用户,g表示组,o表示其他人,a表示所有人
例:chmod 755 file chmod g+w file chmod a=r file
chown命令。用于改变文件和目录的所有者和组
例:chown root file
7.变量:Shell可以定义两类变量:局部变量和环境变量。局部变量为私有,不传递。环境变量由父进程传给子进程。
8.管道。管道为进程之间的通信服务,他是把一个命令的输出作为另外一个命令输入的机制。如:who | wc,通过管道,Shell吧who 指令的输出作为wc命令的输入
9.POSIX是Portable Operating System Interface for Computer Eaviron ment的所写,意思是计算机环境的可一直操作系统界面
10.grep命令:在一个或者多个文件中搜索字符串模版
11.sed命令:非交互式编辑器,可在命令行输入命令和文件名。sed是非破坏性的,在你用Shell重新定向存储输出以前,sed不会改变你的文件。
12.awk命令:用来操纵数据和产生报告的程序语言。有nawk,gawk和awk
awk格式:awk ‘pattern’ filename awk ‘{action}’ filename
awk ‘pattern’ ‘{action}’ filename
13.awk编程时需要用到的几个内建变量:
FNR:当前文件的记录号 FS:输入域分隔符,默认是空格 IGNORECASE:关闭大小写敏感(赋值为1) NF:当前文件域数量 NR:当前文件记录数
OFMT:数字输出格式 OFS:输出域分隔符 ORS:输出记录分隔符 RS:输入记录分隔符(打印一个换行)
14.awk编程时的条件语句格式:(和C语言差不多)
if(expression){
statement;statement;…..
}
{if(expression){
statement;statement;….
}
else{
statement;statement;…..
}
}
{if(expression){
statement;…
}
else if (expression){
statement;
}
else{
statement;
}
}
15.awk编程时的循环控制语句
break和continue语句。break语句使你能在满足某个特定条件时跳出循环。在满足某个特定条件的情况下,continue可以使循环忽略任何语句,而直接返回循环的顶端,开始下一次重复。
16.程序控制语句:next语句:从输入文件中读取下一行,然后从头开始执行awk脚本
` exit语句:用于结束awk程序。它终止对记录的处理,但是不会略过END模块
17.数组:awk中数组的下标可以是数字和字母,所以称为关联数组。可用域值作为数组的下标:for(index_value in array) statement
18.split函数:awk的内建函数split允许你把一个字符串分割成单词并存储在数组中。
太奇怪了!用split分出的数组竟然是从[1]开始的……
19.awk的命令参数处理:
ARGV:包括命令行的数组,这个数组从0开始……
ARGC:包含命令行参数个数的变量。
20.awk内建函数:
字符串函数:s
文档评论(0)