shell命令
0. shell 脚本各种执行方式(source ./*.sh, . ./*.sh, ./*.sh)的区别
结论一: ./*.sh的执行方式等价于sh ./*.sh或者bash ./*.sh,此三种执行脚本的方式都是重新启动一个子shell,在子shell中执行此脚本(通过fork实现)。
结论二: .source ./*.sh和 . ./*.sh的执行方式是等价的,即两种执行方式都是在当前shell进程中执行此脚本,而不是重新启动一个shell 而在子shell进程中执行此脚本。
验证依据:没有被export导出的变量(即非环境变量)是不能被子shell继承的
1. rpm –qa 确认所有rpm
rpm –q rpm_name 查询rpm安装与否
rpm –qi rpm_name安装rpm的信息
rpm –ql rpm_name 列出所有安装的rpm
2.id 用户名 显示用户id信息
id -u ;显示用户id
id -g ;显示组id
3.dd 文件转换
dd [选项] if=输入文件(或设备名称) of=输出文件(或设备名称)
ibs=bytes 一次读取的字节数 obs 一次写入的字节数 缓冲区
skip=blocks 跳过读入缓冲区开头的ibs*blocks块
bs=bytes 同时设置读写缓冲区的字节数
conv=ucase 把字母由小写变成大写
conv=lcase 把字母由大写变成小写
conv=noerror 出错时不停止处理
4.pmap –x pid可以查看进程的内存占用信息
5. nohup command [arg ...] [&] 忽略hangup信号运行命令
nohup command > myout.file 2>&1 &
nohup java -jar target/eureka-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
使用&命令后,作业被提交到后台运行,当前控制台没有被占用,但是一但把当前控制台关掉(退出帐户时),作业就会停止运行。nohup命令可以在你退出帐户之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。
若程序后台运行(&),则终端退出后,程序不退出继续运行。默认情况下,输出到当前目录的nohup.out中。
退出状态:126 可以查找但不能调用 Command 参数指定的命令;127 nohup 命令发生错误或不能查找由 Command 参数指定的命令;否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。
6. echo
echo -n不换行输出
echo -e 处理特殊字符
若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\0nnn 插入nnn(八进制)所代表的ASCII字符;
\xHH 插入HH(十六进制)所代表的ASCII字符;
$echo -e "a\bdddd"
dddd
echo -ne '\xde\xad\xc0\xde' >> jffs2_rootfs