随笔分类 -  shell编程

摘要:题目: 终端输入一个文件名,判断是否是设备文件。 答案: #!/bin/bash echo -e "please input a filename to judge it is or not a device file.\n\n" read -p "Input a filename: " filen 阅读全文
posted @ 2020-01-05 13:57 王清河 阅读(157) 评论(0) 推荐(0) 编辑
摘要:题目: root用户今天登陆了多长时间 答案: #!/bin/bash cat /proc/uptime | awk -F . '{run_days=$1/86400; run_hour=($1%86400)/3600;run_minute=($1%3600)/60;run_second=$1%60 阅读全文
posted @ 2020-01-05 13:42 王清河 阅读(152) 评论(0) 推荐(0) 编辑
摘要:题目: 编写个shell脚本将当前目录下大于10K的文件转移到/tmp目录下。 答案: #!/bin/bash for FileName in `ls -l | awk '$5>10240 {print $9}'`; do mv $FileName /tmp done ls -al /tmp 阅读全文
posted @ 2020-01-05 13:38 王清河 阅读(147) 评论(0) 推荐(0) 编辑
摘要:题目: 文件移动拷贝,有m1.txt m2.txt m3.txt m4.txt,分别创建出对应的目录,m1 m2 m3 m4 并把文件移动到对应的目录下。 答案: #!/bin/bash touch m1.txt m2.txt m3.txt m4.txt I=1 while [ $I -le 4 ] 阅读全文
posted @ 2020-01-04 14:51 王清河 阅读(191) 评论(0) 推荐(0) 编辑
摘要:题目: 编写一个的脚本,它包括以下内容 a) 包含一段注释,列出您的姓名、脚本的名称和编写这个脚本的目的。 b) 问候用户。 c) 显示日期和时间。 d) 显示这个月的日历。 e) 显示您的机器名。 f) 显示当前这个操作系统的名称和版本。 g) 显示父目录中的所有文件的列表。 h) 显示root正 阅读全文
posted @ 2020-01-04 14:43 王清河 阅读(208) 评论(0) 推荐(0) 编辑
摘要:题目: 编写shell脚本获取本机的网络地址。 答案: #!/bin/bash IP=`ifconfig | grep "inet addr" | sed '/127/d' | awk '{print $2}' | awk -F : '{print $2}'` MASK=`ifconfig | gr 阅读全文
posted @ 2020-01-03 11:15 王清河 阅读(180) 评论(0) 推荐(0) 编辑
摘要:题目:写一个shell脚本来得到当前的日期,时间,用户名和当前工作目录 答案: 解析:$LOGNAME 获取登录用户名 date 获取当前时间 who i am 获取用户名,用户数据所在磁盘号,以及日期和ip地址 pwd获取当前文件所在路径 注意点: 如果系统应用了中文语言包的话,who i am 阅读全文
posted @ 2020-01-03 10:46 王清河 阅读(209) 评论(0) 推荐(0) 编辑
摘要:有两个文件如下所示: employee.txt 100 Jason Smith 200 John Doe 300 Sanjay Gupta 400 Ashok Sharma bonus.txt 100 $5,000 200 $500 300 $3,000 400 $1,250 employee.tx 阅读全文
posted @ 2020-01-02 17:36 王清河 阅读(211) 评论(0) 推荐(0) 编辑
摘要:文本分析,取出/etc/password中shell出现的次数 答案1: cat /etc/passwd | awk -F: '{if ($7!="") print $7}' | sort | uniq -c /etc/passwd 中的数据是以:隔开的 sort是将文件中的每一行作为一个单位,互相 阅读全文
posted @ 2019-12-30 22:28 王清河 阅读(230) 评论(0) 推荐(0) 编辑
摘要:打印本机的交换分区大小 答案: free -m | sed -n '/Swap/p' | awk '{print $2}' 解析: free -m 查看系统内存使用情况 sed -n ‘/Swap/p’ 打印匹配Swap的行 awk '{print $2}' awk缺省的行分隔符是换行,缺省的列分隔 阅读全文
posted @ 2019-12-29 22:11 王清河 阅读(210) 评论(0) 推荐(0) 编辑
摘要:题目: shell编程题(六) 打印当前sshd的端口和进程id 例如:处理结果: sshd Port&&pid: 22 5412 答案: netstat -nltp | grep ssh |awk -F: '{print $2}'| grep -v "^$"|awk '{print "ssh:"$ 阅读全文
posted @ 2019-12-26 18:08 王清河 阅读(209) 评论(0) 推荐(0) 编辑
摘要:输出本机创建20000个目录所用的时间 #! /bin/bash time ( for i in {1..2000} ; do mkdir /tmp/nnn$i done ) 运行记得删除 rm -rf /tmp/nnn* 阅读全文
posted @ 2019-12-10 22:43 王清河 阅读(150) 评论(0) 推荐(0) 编辑
摘要:打印root可以使用可执行文件数。 echo "root's bins: $(find ./ -type f | xargs ls -l | sed '/-..x/p' | wc -l)" 命令解释 1.echo 输出后面双引号的的内容 2. find ./ -type f 查找当前目录下文件类型为 阅读全文
posted @ 2019-11-25 14:37 王清河 阅读(144) 评论(0) 推荐(0) 编辑
摘要:编译当前目录下的所有.c文件 用于编译调试指定C代码。 ./make.sh 文件名(必选)debug(调试,可选) exbot@ubuntu:~/shareWin/shell/20190925$ ./4.sh file hello.ctarget hellohellofile world.ctarg 阅读全文
posted @ 2019-09-25 20:40 王清河 阅读(205) 评论(0) 推荐(0) 编辑
摘要:将一目录下所有的文件的扩展名改为bak ${i%%.*} 截掉一个变量字符串第一个"."以及其右侧的所有字符,即最短前缀匹配。 阅读全文
posted @ 2019-09-24 21:57 王清河 阅读(211) 评论(0) 推荐(0) 编辑
摘要:计算1-100之和 -eq(等于) -ne(不等于) -lt(小于) -le(小于等于) -gt(大于) -ge(大于等于) 阅读全文
posted @ 2019-09-23 21:03 王清河 阅读(176) 评论(0) 推荐(0) 编辑
摘要:求2个数之和 运行结果: exbot@ubuntu:~/shareWin/linux/shell$ ./sum.sh 1 2The arg in't correct3 $#:相当于C语言的mian函数的(argc-1)传入的参数列表的值,表示输入值的数量减1,这个减去的1就是argv[0]。 其中: 阅读全文
posted @ 2019-09-22 19:55 王清河 阅读(413) 评论(0) 推荐(0) 编辑
摘要:real 0m3.367s user 0m0.066s sys 0m1.925s 第一种方法结果: 4 /bin/bash 1 /bin/sync 1 /sbin/halt 31 /sbin/nologin 1 /sbin/shutdown 第二种方法结果: /bin/sync 1 /bin/bas 阅读全文
posted @ 2019-09-22 19:09 王清河 阅读(1436) 评论(0) 推荐(0) 编辑
摘要:POSIX规定了正则表达式的C语言库函数,详见regex(3)。我们已经学习了很多C语言库函数的用法,读者应该具备自己看懂man手册的能力了。本章介绍了正则表达式在grep、sed、awk中的用法,学习要能够举一反三,请读者根据regex(3)自己总结正则表达式在C语言中的用法,写一些简单的程序,例 阅读全文
posted @ 2019-09-08 21:27 王清河 阅读(1146) 评论(0) 推荐(0) 编辑
摘要:正则表达式 以前我们用grep在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义。其实grep还可以找出符合某个模式(Pattern)的一类字符串。例如找出所有符合xxxxx@xxxx.xxx模式的字符串(也就是email地址),要求x字符可以是字母、数字、下划线、小数点或减号,ema 阅读全文
posted @ 2019-09-08 21:21 王清河 阅读(482) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示