【Linux从零开始】学习shell script前过度阶段的一些

本文发布时间: 2019-Mar-22
这一段时间好好练了练vim操作。书中vim与shell script之间有好长一段,不是什么很系统的东西,多以命令为主,所以就记录了一些凌乱的笔记。虽说乱吧,但1条1条还都挺有用的。先发出来再慢慢扩充吧,估计后天就可以开始shell script了     1.shell作为命令解释器,是建立在用户和操作系统之间的接口;2.shell除了具有解释键盘命令并发送至操作系统的功能外,还是一种高级语言,如同windows里面的批处理程序,可以以简洁的代码实现一些复杂的功能;3.管道:可以将一个程序的输出传送给另外一个程序作为它的输入。用 " | " 来表示;4.过滤器:一种特殊的管道,可以将第一个程序的输出做以筛选处理再传送给第二个程序;5.远程登录:telnet不安全,ssh加密6.识别当前运行的shell:ps7.挂起一个正在运行的程序: ctrl + z8.在输入的时候删除最近一个单词(没空格的字符串): ctrl + w9.查看文件信息:file10.显示出系统所使用的所有语言设置:locale11.script:记录会话,cat读取会话12.dos2unix unix2dos 不同系统间文件格式的转换13.相关命令的定位搜索:which(搜索到的第一个位置) whereis(列出所有的路径)14.apropos:搜索关键字 whatis:完全匹配15.who w :列出系统上的所有用户16.在命令后加上 & 将其变为后台运行17. uname -r 显示版本信息18. env 显示各种环境变量19.echo $LANG 显示各种变量name='abc' 自定义变量name=${name}yes 增加内容name= "$name its me" 输出变量原来的值name= ' $name its me' 原样输出' '中的内容20.重复执行上条命令,ctrl + p21.set 查看系统中的所有变量22.export 自定义变量转化为环境变量自定义变量与环境变量的差别:环境变量可以被子进程继续引用,而自定义变量不能被子进程继续引用23.选取命令:  cut:常用参数  -d'分隔字符' -f fields  -c 字符范围EG: cut ' ; ' -f 5 显示以;为分隔字符的第5个数据(分隔符必须是单个字符)   cut ' ; ' -f 3,5   cut -c 12- 若数据分行显示,输出第12个字符以后的数据24.标准输入输出的重定向:<输入方 >输出 cat命令 : cat filename表示读取文件,也就是从文件输出数据并输出到屏幕上 cat从键盘读取数据,并且输出到屏幕 cat > filename从键盘输入,并且输出到文件中(会无条件的覆盖已有的文件) 以 ctrl + d 来结束输入 防止覆盖已有的文件: 启用该设置:set -o noclobber 禁用该设置:set +o noclobber 使用追加标准输出:可以向某个文件的末尾添加新的内容 cat filename1 >> filename2 使数据消失,同时不改变文件的权限: 将数据重定向至 /dev/null eg: cat /dev/null > filename 将该文件内容清空25.程序的挂起:ctrl + z 阻止程序的运行 移动至前台运行: fg 作业编号 终止后台程序: kill命令的使用 kill -9 终止所有可以终止的程序 kill %1 终止相应作业编号的程序 kill PID 终止相应PID的作业编号 ps 查看作业的PID jobs 显示当前会话的作业状态last: 用于显示登录这的信息输出 "帐号/终端机/来源/日期时间"26.grep:-a : 将binary文件以text文件的方式查找数据;-c : 计算找到 '查找字符串' 的次数;-i : 忽略大小写;-n : 顺便输出行号;-v : 反向选择;--color=auto : 将找到的关键字高亮(一般自动开启)-A : 后面可加数字, 为after的意思,除了列出该行外,后续的n行也会列出-B :*****************before*****************wc:统计文件的行数,字数,字符数27.tee:双向重定向命令 -a 以累加的形式将数据输入一个文件字符转换命令: tr: -d 删除其中的某个字符串 EG: tr '[a-z]' '[A-Z]' 将小写替换成大写 tr -d ';' 删除;符号 paste: paste file1 file2 直接将2个文件相同的行粘贴在一起(以TAB分隔) join: [-ti12] file1 file2 -t 如果相应行之前的文件内容相同以分隔符链接 Eg: join -t ':' file1 file2 -i 忽略大小写 使用join前最好对文件进行sort split:切割文件命令 -b 切割成的文件大小,可加单位b k m -l 以行数来进行切割 EG: split -b 300k filename newfile前导名


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:11pm
栏目列表