# /usr/bin/last -xF | egrep "reboot|shutdown|runlevel|system"
[命令] Linux 命令 set (设置 Shell 里的位置变量或者 Shell 的执行方式)
内容一:set 命令的格式
1.1 设置 Shell 的位置变量的格式
# set <Value of the first position variable> <Value of the second location variable> ......
1.2 设置 Shell 的执行方式
# set <parameter>
或者:
# set <parameter> +o
或者:
# set <parameter> -o
(补充:+o 代表打开特殊属性,-o 代表结束特殊属性)
内容二: set 的常用参数
1) -a 将已修改的变量进行标记,为将其输出至环境变量做准备
2) -b 让被中止的后台进程立刻显示退出状态代码
3) -d 取消使用杂凑表记忆中使用过的指令
4) -e 若退出状态代码不为 0 (正常退出)则立即退出,并显示错误原因
5) -f 取消通配符
6) -h 默认自动记录函数位置
7) -k 让命令的参数为此命令的环境变量
8) -l 默认自动记录 for 循环变量名
9) -m 监视模式
10) -n 测试模式(只读取不执行)
11) -p 优先顺序模式
12) -P 让文件或目录代替符号链接
13) -t 让随后的命令执行后立即退出
14) -u 使用未定义的变量时显示错误信息
15) -v 显示输入值
16) -H shell 使用感叹号 “!” + 号码的方式调用 history 命令中的历史命令
17) -x 命令指向前先显示此命令的参数或变量
(补充:将以上参数前面的 – 换成 + 则会变成相反的效果)
[步骤] Linux rm 命令的监控
步骤一:将原来的 rm 命令进行备份
# cp /usr/bin/rm /usr/bin/rm.original
步骤二:创建一个记录 rm 命令使用的脚本
# cat /usr/bin/rm
#!/bin/bash
log=/var/log/rm_command.log
echo "The $$ is calling rm command" >> $log
echo "The full command is $*" >> $log
echo
echo "now use this command to get more information: /bin/ps axwwo user,pid,ppid,%cpu,%mem,vsz,rss,stat,time,cmd" >>$log
/bin/ps axwwo user,pid,ppid,%cpu,%mem,vsz,rss,stat,time,cmd >>$log
/usr/bin/rm.original $*
echo "============================================================" >>$log
步骤三:给记录 rm 命令使用的脚本执行权限
# chmod 755 /usr/bin/rm.original
步骤四:下次使用 rm 命令后就可以监控 /var/log/rm_command.log 日志了
(步骤略)
[排错] 解决 Linux 执行命令时报错 “bash: $’\r’: command not found”
报错代码:
bash: $'\r': command not found
分析:
Windows 系统文件换行使用的换行符是 \r\n
Linux 系统文件换行使用的换行符是 \n
在 Windows 编辑的文本换行符可能就是 \r\n
要解决这个问题需要将换行符从 \r\n 换成 \n
解决方法:
方法一:使用 dos2unix 转换文件换行符
1.1 安装 dos2unix 软件
# yum -y install dos2unix
1.2 使用 dos2unix 转换文件换行符
# dos2unix <file>
方法二:使用 vim 转换文件换行符
2.1 使用 vim 进入文件
# vim <file>
2.2 转换文件换行符
: set ff=unix
(注意:是在 vim 的末行模式下执行以上命令)
2.3 保存文件
: wq
(注意:是在 vim 的末行模式下执行以上命令)
[内容] Linux 进程修正值 (nice 值) 的设置
内容目录:
内容一:进程优先级和修正值(nice 值)的关系
1.1 进程优先级的作用
1.2 进程优先级和修正值(nice 值)的关系
1.3 修正值(nice 值)的范围
内容二:修正值(nice 值)的设置
2.1 设置修正值(nice 值)的格式
2.2 设置修正值(nice 值)的案例
内容三:显示进程的修正值
具体的内容:
内容一:进程优先级和修正值(nice 值)的关系
1.1 进程优先级的作用
进程的真正优先级越小,则此进程则越能优先被执行
1.2 进程优先级和修正值(nice 值)的关系
进程的真正优先级 = 进程默认优先级 + 修正值(nice 值)
1.3 修正值(nice 值)的范围
从 -20 到 +19
内容二:修正值(nice 值)的设置
2.1 设置修正值(nice 值)的格式
# nice -n <correction value> <command>
或者:
# nice --adjustment=<correction value> <command>
或者:
# nice -<correction value> <command>
2.2 设置修正值(nice 值)的案例
# nice -n 10 top
或者:
# nice --adjustment=10 top
或者:
# nice -10 top
(注意:这里的 -10 不是指负数 10 而是指正数 10)
(补充:这里以修正值为 10 启动 top 命令为例)
内容三:显示进程的修正值
# top
或者:
# ps -ef
(
补充:
1) PRI 代表进程默认的优先级
2) NI 代表进程的修正值(nice 值)
3) 进程的真正优先级 = PRI + NI
4) 如果多个进程的真正优先级一样,则 root 用户的进程被优先执行
)