将当前目录下大于10K的文件转移到/tmp目录下

find . -type f -size +10k -exec mv {} /tmp \;

编写一个shell,判断用户输入的文件是否是一个字符设备文件。如果是,请将其拷贝至/dev目录下

#!/bin/bash
read -t -p 'Please output the file you specified:' str1
# 读取用户输入内容 if [ -n ${str1} ] && [ -e ${str1} ];
# 判断文件的真伪
then
str2=$(ls -l ${str1})
str3=${str2::}
if [ $str3 == "c" ];
# 判断文件是否是块设备
then
mv $str1 /dev/
fi
else
echo "Input is wrong."
fi

请解释该脚本中注释行的默认含义与基础含义

#!/bin/sh
# chkconfig:
# /etc/rc.d/rc.httpd
# Start/stop/restart the Apache web server.
# To make Apache start automatically at boot, make this
# file executable: chmod /etc/rc.d/rc.httpd
case "$1" in
'start')
/usr/sbin/apachectl start ;;
'stop')
/usr/sbin/apachectl stop ;;
'restart')
/usr/sbin/apachectl restart ;;
*)
echo "usage $0 start|stop|restart" ;;
esac
请解释该脚本中注释行的默认含义与基础含义
第一行:指定脚本文件的解释器
第二行:指定脚本文件在chkconfig程序中的运行级别,2345代表具体用户模式启动(可用'-'代替),20表示启动的优先级,80代表停止的优先级。优先级数字越小表示越先被执行
第三行:告诉使用者脚本文件应存放路劲
第四行:告诉用户启动方式以及启动的用途
第五行:对于脚本服务的简单描述
第六行:文件的扩展可执行操作

写一个简单的shell添加10个用户,用户名以user开头

#!/bin/bash
for i in `seq `;
do
useradd user${i}
done

写一个简单的shell删除10个用户,用户名以user开头

#!/bin/bash
for i in `seq `;
do
userdel -r user${i}
done

写一个shell,在备份并压缩/etc目录的所有内容,存放在/tmp/目录里,且文件名如下形式yymmdd_etc.tar.gz

#!/bin/bash
NAME=$(date +%y%m%d)_etc.tar.gz
tar -zcf /tmp/${NAME} /etc

批量创建10个系统帐号oldboy01-oldboy10并设置密码(密码为随机8位字符串)

#!/bin/bash
for i in `seq `;
do
useradd oldboy${i}
echo $RANDOM | md5sum | cut -c - | passwd --stdin oldboy${i}
done

写一个脚本,实现判断192.168.10.0/24网络里,当前在线用户的IP有哪些(方法有很多)

#!/bin/bash
red="\e[31m"
shutdown="\e[0m"
green="\e[32m"
for((i=;i<=;i++))
do
ping -c -W1 -w 0.1 192.168..${i} &> /dev/null
if [ $? -eq ]
then
echo -e "${green}"192.168..${i}${shutdown}" is running."
else
echo -e "${red}"192.168..${i}${shutdown}" is stop."
fi
done

取出/etc/passwd文件中shell出现的次数

注:shell是指后面的/bin/bash,/sbin/nologin等

awk -F: '{print $7}' /etc/passwd | sort | uniq -c

文档合并,并输出指定样式内容

 Jason Smith
John Doe
Sanjay Gupta
Ashok Sharma

employee.txt

 $,
$
$,
$,

bonus.txt

 ashok sharma $,
jason smith $,
john doe $
sanjay gupta $,

处理结果

paste employee.txt bonus.txt | awk '{print $1,$2,$3,$5}' | tr '[A-Z]' '[a-z]' | sort -k 

答案

请按照这样的日期格式(xxxx-xx-xx)每日生成一个文件,例如今天生成的文件为2017-07-05.log, 并且把磁盘的使用情况写到到这个文件中

df -h > $(date '+%Y-%m-%d').log

Shell考题初级篇的更多相关文章

  1. Shell考题中级篇

    写脚本实现,可以用shell.perl等.把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数. grep -v -x bbb -f aaa > ccc && ...

  2. 零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce

      此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结.五一假期:在写点内容,也算是总结.上面我们会了基本的编程,我们需要对hadoop有一个更深的理解:hadoop分为h ...

  3. [转帖]APP逆向神器之Frida【Android初级篇】

    APP逆向神器之Frida[Android初级篇] https://juejin.im/post/5d25a543e51d455d6d5358ab 说到逆向APP,很多人首先想到的都是反编译,但是单看 ...

  4. Python 正则表达式入门(初级篇)

    Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. 转载请写明出处 引子 首先说 正则表达式是什么? 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达 ...

  5. python 面向对象初级篇

    Python 面向对象(初级篇) 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发" ...

  6. 25个增强iOS应用程序性能的提示和技巧(初级篇)

    25个增强iOS应用程序性能的提示和技巧(初级篇) 标签: ios内存管理性能优化 2013-12-13 10:53 916人阅读 评论(0) 收藏 举报  分类: IPhone开发高级系列(34)  ...

  7. ASP.NET MVC 随想录——开始使用ASP.NET Identity,初级篇(转)

    ASP.NET MVC 随想录——开始使用ASP.NET Identity,初级篇   阅读目录 ASP.NET Identity 前世今生 建立 ASP.NET Identity 使用ASP.NET ...

  8. python_way ,day7 面向对象 (初级篇)

    面向对象 初级篇   python支持 函数 与 面向对象   什么时候实用面向对象? 面向对象与函数对比 类和对象 创建类 class 类名 def 方法名(self,xxxx) 类里面的方法,只能 ...

  9. Entity Framework 学习初级篇--基本操作:增加、更新、删除、事务(转)

    摘自:http://www.cnblogs.com/xray2005/archive/2009/05/17/1458568.html 本节,直接写通过代码来学习.这些基本操作都比较简单,与这些基本操作 ...

随机推荐

  1. requests库结合selenium库共同完成web自动化和爬虫工作

    我们日常工作中,单纯的HTTP请求,程序员都倾向于使用万能的python Requests库.但大多数场景下,我们的需求页面不是纯静态网页,网页加载过程中伴随有大量的JS文件参与页面的整个渲染过程,且 ...

  2. pyinstaller打包py脚本Warning:lib not found等相关问题

    小爬从使用Pyinstaller打包py为exe文件以来,一直都会碰到Warning:lib not found等相关问题,诸如: 虽然大多数时候,您像我一样忽略这些warning,打包后的exe也能 ...

  3. centos6.x安装yum及python依赖包

    步骤1:清空pythonrpm -qa|grep python|xargs rpm -e --allmatches --nodeps whereis python|xargs rm -fr 步骤2:清 ...

  4. $CH0601\ Genius\ ACM$ 倍增优化DP

    ACWing Description 给定一个长度为N的数列A以及一个整数T.我们要把A分成若干段,使得每一段的'校验值'都不超过N.求最少需要分成几段. Sol 首先是校验值的求法: 要使得'每对数 ...

  5. .NET设计篇08-线程统一取消模型和跨线程访问UI

    知识需要不断积累.总结和沉淀,思考和写作是成长的催化剂,输出倒逼输入 内容目录 一.线程统一取消模型1.取消令牌2.可以中断的线程1.设计一个中断函数2.创建CancellationTokenSour ...

  6. 1087 有多少不同的值 (20 分)C语言

    当自然数 n 依次取 1.2.3.--.N 时,算式 ⌊n/2⌋+⌊n/3⌋+⌊n/5⌋ 有多少个不同的值?(注:⌊x⌋ 为取整函数,表示不超过 x 的最大自然数,即 x 的整数部分.) 输入格式: ...

  7. SpringBootTest 测试工具

    以下内容,翻译自官方文档,并结合了学习过程的demo. Spring Boot提供了许多实用程序和注解,帮助测试应用程序.测试支持由两个模块提供:spring-boot-test 包含核心项,spri ...

  8. 【JavaScript学习笔记】数据类型

    1.获取数据类型 typeof 用法: typeof variable  or  typeof(variable) JavaScript中总共有6种数据类型,string.number.boolean ...

  9. echarts设置数据在轴线上显示

    项目中遇到数据需要在右侧显示,如图,直接上代码: 1.需要在哪个轴上显示  就把那个轴写成一个数组 2.分别设置一下定位和数据即可(如下图红色部分) yAxis: [ { type: 'categor ...

  10. Python工具类(一)—— 操作Mysql数据库

    如何调用直接看__main__函数里如何调用此工具类就阔以啦! # encoding=utf-8 import pymysql # 导入所有Mysql配置常量,请自行指定文件 from conf.se ...