随笔分类 - shell编程
shell
摘要:终端形式 有人说awk的优势在于可以个性化输出命令,这么说来太抽象了,假如我们查看占用6379端口的进程信息。 输出结果: 假如我们只想获取进程号PID,那么awk的优势就显现了 上述命令中 | 叫做管道符号 管道符号之前为输入参数 管道后为输出结果 这个案例中输入参数就是 “查看端口的结果” 输出
阅读全文
摘要:首先声明:本人是传智播客的粉丝,拥有他出的多本编程书籍,此文绝无诋毁抹黑之意。 但在linux系统编程第88页给出的while循环范例中,代码运行无法得到预期结果 原代码如下 but 事实很打脸,运行后始终提示: 修改后的代码 until的例子也是如此
阅读全文
摘要:$0 这个程式的执行名字 $n 这个程式的第n个参数值,n=1..9 $* 这个程式的所有参数,此选项参数可超过9个。 $# 这个程式的参数个数 $$ 这个程式的PID(脚本运行的当前进程ID号) $! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号) $? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误) $- 显示shell使用的当前选...
阅读全文
摘要:乱敲一些代码:实验环境centos7 恭喜发财 7700 您以为这是在string里查找my的出现位置那可就大错特错了,这是查找m或y第一次出现的位置,哪个先找到,就算哪个的索引 因此先找到y的索引在位置11,再看match,您若以为是在字符串中找到my的索引位置并计算长度,那我只能说 I‘m de
阅读全文
摘要:-name find ./ -name *.mp3 文件名包含mp3的文件 -type find ./ -type f/d/p/c/b/s/l --f:文件 --d:目录 --p:管道 --c:字符设备 --b:块设备 --s:socket l:符号连接 -size 默认大小 512B 也就是 0.
阅读全文
摘要:sed命令处理文件的行数据,awk处理文件的列数据! awk -F: '{print $7}' /etc/passwd ps aux | awk '{x=x+1;} END {print x}' awk -F: '{print $7;}' /etc/passwd $0意味着打印所有列 假如有名为go
阅读全文
摘要:第一个s意味着 要执行的是替换命令,g表示替换多个 中间的/表示空
阅读全文
摘要:正则表达式处理文件的内容,shell处理文件本身 grep *匹配0到n个 .(点儿)能匹配任意字符 8.8.8.8用于测试外网是否通畅 egrep
阅读全文
摘要:echo $? 这一表达式可以用于输出程序的执行结果 注意!和我们传统观念所不同的是,返回的结果为0时是真,为1时是假 如下所示: test命令 上面分别声明了两个小教练的年龄,并所了大小比较。最后调用 echo $?打印比较的结果 下面的例子用于判断目录下的对象是否为文件夹 test -p 判断是
阅读全文
摘要:wildcard 通配服 匹配.c文件 *.sh 常看当前目录下sh文件 *.c 常看当前目录下c文件 [] 表示中括号 e.g [0,1,2,3,4] 能匹配0,1,2,3,4的文件 例如:我们输入如下命令: ls -l [2345][4567][5678][89].sh 结果:-rw-r--r-
阅读全文
摘要:小括号的用途 cd ..; ls -l (cd ..; ls -l) 如果加了括号,则当前工作目录不发生改变 shell变量类型 环境变量 可以使用 echo 或者env 例如 env|grep 变量名查看 命名变量并把该变量输出到全局变量的过程 #1 打印结果 #2 打印结果 上述两结果所不同的是
阅读全文
摘要:#! /bin/sh #这是神圣丁的第一个shell脚本 name="陈培昌" echo "我就喜欢\"$name\"" echo '我就喜欢\"$name\"' echo '我就喜欢#\"$name\"' echo 我就喜欢#\"$name\" ls -l pwd date 编译这段命令有四种方式
阅读全文