青春纸盒子

文: 芦苇

你喜欢我笑的样子

我靠上了落寞的窗子

晚风吹起了我的袖子

明月沾湿了你的眸子


转身,你走出了两个人的圈子

树影婆娑,整座院子


挽起袖子

回头,把揽你忧伤一地的影子

装进,青春,这纸盒子


更多代码请关注我的微信小程序: "ecoder"

luwei0915

导航

2019年3月12日

081_使用 awk 编写的 wc 程序

摘要: #!/bin/bash#自定义变量 chars 变量存储字符个数,自定义变量 words 变量存储单词个数#awk 内置变量 NR 存储行数#length()为 awk 内置函数,用来统计每行的字符数量,因为每行都会有一个隐藏的$,所以每次统计后都+1#wc 程序会把文件结尾符$也统计在内,可以使用 阅读全文

posted @ 2019-03-12 19:31 芦苇の 阅读(627) 评论(0) 推荐(0)

080_生成自签名私钥和证书

摘要: #!/bin/bashread -p "请输入存放证书的目录:" dirif [ ! -d $dir ];then echo "该目录不存在" exitfiread -p "请输入密钥名称:" name#使用 openssl 生成私钥openssl genrsa -out ${dir}/${name 阅读全文

posted @ 2019-03-12 19:26 芦苇の 阅读(340) 评论(0) 推荐(0)

079_统计双色球各个数字的中奖概率

摘要: #!/bin/bash #往期双色球中奖号码如下:#01 04 11 28 31 32 16#04 07 08 18 23 24 02#02 05 06 16 28 29 04#04 19 22 27 30 33 01#05 10 18 19 30 31 03#02 06 11 12 19 29 0 阅读全文

posted @ 2019-03-12 19:24 芦苇の 阅读(944) 评论(0) 推荐(0)

078_使用 egrep 过滤 MAC 地址

摘要: #!/bin/bash#MAC 地址由 16 进制组成,如 AA:BB:CC:DD:EE:FF#[0-9a-fA-F]{2}表示一段十六进制数值,{5}表示连续出现 5 组前置:的十六进制egrep "[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}" $1 # 关于MAC地址M 阅读全文

posted @ 2019-03-12 19:17 芦苇の 阅读(397) 评论(0) 推荐(0)

077_打印各种时间格式

摘要: #!/bin/bashecho "显示星期简称(如:Sun)"date +%a # 二echo "显示星期全称(如:Sunday)"date +%A # 星期二echo "显示月份简称(如:Jan)"date +%b # 3月echo "显示月份全称(如:January)"date +%B # 三月 阅读全文

posted @ 2019-03-12 19:03 芦苇の 阅读(295) 评论(0) 推荐(0)

076_判断文件或目录是否存在

摘要: #!/bin/bashif [ $# -eq 0 ] ;then echo "未输入任何参数,请输入参数" echo "用法:$0 [文件名|目录名]"fi if [ -f $1 ];then echo "该文件,存在" ls -l $1else echo "没有该文件"fi if [ -d $1 阅读全文

posted @ 2019-03-12 18:57 芦苇の 阅读(395) 评论(0) 推荐(0)

075_读取用户输入的账户名称,将账户名写入到数组保存

摘要: #!/bin/bash#定义数组名称为 name,数组的下标为 i,小标从 0 开始,每输入一个账户名,下标加 1,继续存下一个账户#最后,输入 over,脚本输出总结性信息后脚本退出 i=0while :do read -p "请输入账户名,输入 over 结束:" key if [ $key = 阅读全文

posted @ 2019-03-12 18:54 芦苇の 阅读(426) 评论(0) 推荐(0)

074_根据计算机当前时间,返回问候语,可以将该脚本设置为开机启动

摘要: #!/bin/bash#00-12 点为早晨,12-18 点为下午,18-24 点为晚上#使用 date 命令获取时间后,if 判断时间的区间,确定问候语内容 tm=$(date +%H)if [ $tm -le 12 ];then msg="Good Morning $USER"elif [ $t 阅读全文

posted @ 2019-03-12 18:51 芦苇の 阅读(377) 评论(0) 推荐(0)

073_使用 shell 脚本打印如下图形

摘要: #!/bin/bash#打印第一组图片#for(())为类 C 语言的语法格式,也可以使用 for i in;do;done 的格式替换#for((i=1;i<=9;i++))循环会执行 9 次,i 从 1 开始到 9,每循环一次 i 自加 1clearfor (( i=1; i<=9; i++ ) 阅读全文

posted @ 2019-03-12 18:46 芦苇の 阅读(1554) 评论(0) 推荐(0)

072_查看所有虚拟机磁盘使用量以及 CPU 使用量信息

摘要: #!/bin/bashvirt-df #虚拟机磁盘使用量read -n1 "按任意键继续" keyvirt-top # CPU 使用量 阅读全文

posted @ 2019-03-12 18:30 芦苇の 阅读(1210) 评论(0) 推荐(0)

071_关闭 SELinux

摘要: #!/bin/bashsed -i '/^SELINUX/s/=.*/=disabled/' /etc/selinux/configsetenforce 0 阅读全文

posted @ 2019-03-12 18:28 芦苇の 阅读(181) 评论(0) 推荐(0)

070_Shell 脚本对信号的处理,执行脚本后,按键盘 Ctrl+C 无法终止的脚本

摘要: #!/bin/bash#使用 trap 命令可以拦截用户通过键盘或 kill 命令发送过来的信号#使用 kill -l 可以查看 Linux 系统中所有的信号列表,其中 2 代表 Ctrl+C#trap 当发现有用户 ctrl+C 希望终端脚本时,就执行 echo "暂停 10s";sleep 10 阅读全文

posted @ 2019-03-12 18:25 芦苇の 阅读(1484) 评论(0) 推荐(0)

069_破解虚拟机密码,无密码登陆虚拟机系统

摘要: #!/bin/bash#该脚本使用 guestmount 工具,Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具 read -p "请输入虚拟机名称:" nameif virsh domstate $name | grep -q running 阅读全文

posted @ 2019-03-12 18:16 芦苇の 阅读(604) 评论(0) 推荐(0)

068_不登陆虚拟机,修改虚拟机网卡 IP 地址

摘要: #!/bin/bash #该脚本使用 guestmount 工具,Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具#脚本在不登陆虚拟机的情况下,修改虚拟机的 IP 地址信息#在某些环境下,虚拟机没有 IP 或 IP 地址与真实主机不在一个网段#真 阅读全文

posted @ 2019-03-12 18:08 芦苇の 阅读(520) 评论(0) 推荐(0)

067_查看 KVM 虚拟机中的网卡信息(不需要进入启动或进入虚拟机)

摘要: #!/bin/bash #该脚本使用 guestmount 工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中#Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具#虚拟机可以启动或者不启动都不影响该脚本的使用#将虚拟机磁盘文件挂载到文件系统后,就可 阅读全文

posted @ 2019-03-12 17:45 芦苇の 阅读(970) 评论(0) 推荐(0)

066_调整虚拟机内存参数的 shell 脚本

摘要: #!/bin/bash#脚本通过调用 virsh 命令实现对虚拟机的管理,如果没有该命令,需要安装 libvirt-client 软件包 cat << EOF1.调整虚拟机最大内存数值2.调整实际分配给虚拟机的内存数值EOF read -p "请选择[1-2]:" selectcase $selec 阅读全文

posted @ 2019-03-12 17:21 芦苇の 阅读(275) 评论(0) 推荐(0)

065_使用脚本开启关闭虚拟机

摘要: #!/bin/bash #脚本通过调用 virsh 命令实现对虚拟机的管理,如果没有该命令,需要安装 libvirt-client 软件包#$1 是脚本的第 1 个参数,$2 是脚本的第 2 个参数#第 1 个参数是你希望对虚拟机进行的操作指令,第 2 个参数是虚拟机名称 case $1 inlis 阅读全文

posted @ 2019-03-12 17:18 芦苇の 阅读(564) 评论(0) 推荐(0)

064_将 Linux 系统中 UID 大于等于 1000 的普通用户都删除

摘要: #!/bin/bash#先用 awk 提取所有 uid 大于等于 1000 的普通用户名称#再使用 for 循环逐个将每个用户删除即可 user=$(awk -F: '$3>=1000{print $1}' /etc/passwd)for i in $userdo userdel -r $idone 阅读全文

posted @ 2019-03-12 17:09 芦苇の 阅读(1751) 评论(0) 推荐(0)

063_显示本机 Linux 系统上所有开放的端口列表

摘要: #!/bin/bash#从端口列表中观测有没有没用的端口,有的话可以将该端口对应的服务关闭,防止意外的攻击可能性 ss -nutlp |awk '{print $1,$5}' | awk -F"[: ]" '{print "协议:"$1,"端口号:"$NF}' | grep "[0-9]" | un 阅读全文

posted @ 2019-03-12 17:06 芦苇の 阅读(519) 评论(0) 推荐(0)

062_判断用户输入的是 Yes 或 NO

摘要: #!/bin/bashread -p "Are you sure?[y/n]:" surecase $sure iny|Y|Yes|YES) echo "you enter Yes";;n|N|NO|no) echo "you enter No";;*) echo "error";;esac 阅读全文

posted @ 2019-03-12 16:56 芦苇の 阅读(295) 评论(0) 推荐(0)