大夏shell编程学习笔记(1)
来源:互联网 发布:糖糖淘宝客怎么样 编辑:程序博客网 时间:2024/05/23 19:19
显示数据
①Linux标准文件描述符
②重定向错误
$ ls -al test 2> test4 #仅重定向错误$ ls -al test &> test4 #所有输出都发送到同一个位置,默认错误消息优先于标准输出$ exec 3>&- #关闭文件描述$ ls -al text 2> /dev/null #禁止错误消息而不保存
③临时文件
$ mktemp testing.XXXXXX #在/tmp下创建一个唯一的临时文件(返回的是文件名,用"-t"参数,返回的是完整路径)$ mktemp -d dir.XXXXXX #建立一个零时目录
④记录消息
$ tee filename #将来自STDIN的数据同时发往STDOUT和filename文件中 (用"-a"使其添加消息而不是默认的覆盖消息)
脚本控制
①处理信号
$ trap commands signals #当收到signals时候,忽略这个信号,并且执行commands$ trap - signals #移除捕获
②以后台模式运行
在命令后面加一个& , 即可使脚本在后台运行。
$ nohup ./test & #将test脚本在后台运行,并且不输出运行结构,结构存入nohup.out中
③作业控制
$ jobs -l #列出进程的PID和作业编号 #带加号的作业是默认作业,减号的是处理完默认作业后即将成为默认的作业$ bg 2 #以后台模式重启作业编号为2的作业$ fg 2 #以前台模式重启作业编号为2的作业
④进阶命令
调度优先级是一个整数值,从-20到+20(最低优先级)。默认情况下,bash shell启动所有的优先级为0的进程。
$ nice -n 10 ./test #减少test脚本运行的优先级
Linux系统提供了3种方式在预定时间运行脚本:at命令(atd是以后台模式运行),batch命令,cron命令。
$ at -f test 12:07 #让test作业在12点07分的时候执行,-q可以指定优先级字母(a到z,a是最高级的队列)$ atq #查看排队的作业$ atrm 8 #移除作业编号为8的作业
$ batch -f test 12:07 #让test最早执行时间为12点07分,当平均负载低于0.8才执行
cron表格可以指定作业运行时间,尤其是很方便的设置作业定期的调度
min hour dayofmonth month dayofweek command #可以用*表示每个的意思$ 00 12 * * * if [ 'data + %d -d tomorrow' = 01 ] ; then ;command #每个月的最后一天中午12点运行命令$ crontab -l #查看拥有的cron表格
⑤启动脚本
Linux在打开系统时候,最先运行的是init程序,内核总向它分配PID 1,然后init程序读取/etc/inittab文件。Linux系统通过rc脚本确定以哪种运行级别启动那些程序。rc脚本确定当前系统的运行级别并在该运行级别上运行相应的脚本。
0 0
- 大夏shell编程学习笔记(1)
- 大夏shell编程学习笔记(2)
- 大夏shell编程学习笔记(3)
- 大夏shell编程学习笔记(4)
- 大夏shell编程学习笔记(5)
- 大夏shell编程学习笔记(6)
- 大夏shell编程学习笔记(7)
- shell编程学习笔记(1)
- shell脚本编程学习笔记(1)
- Shell编程学习笔记(1)
- shell学习笔记(二):《Unix Shell编程》学习笔记
- shell编程学习笔记
- Shell 编程-学习笔记
- shell编程学习笔记
- shell 编程 学习笔记
- SHELL编程学习笔记
- Shell编程学习笔记
- SHELL编程学习笔记
- 动画相关的工具类AnimationUtil
- 软件产品 软件版本
- Android性能优化 (一)- ListView
- [LinkedIn]Combination factors
- 第四周项目1.1
- 大夏shell编程学习笔记(1)
- zookeeper addauth
- package和import的使用
- GetComponent<T>()详解
- 第四周项目1.2
- iOS最佳实践
- 第四周项目1.3
- android view原理
- mysql 存储过程中变量的定义与赋值操作