linux基础练习8
Posted woaiyitiaochai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux基础练习8相关的知识,希望对你有一定的参考价值。
1、用shell脚本实现自动登录机器
#!/usr/bin/expect
set ip 192.168.1.137
set user root
set password xxxxxx
spawn ssh $user@$ip
expect {
"yes/no" { send "yes ";exp_cotinue}
"password" {send "$password "}
}
interact
2、shell 判断一个值bone是否在数组arrayZ=( one two three four five five )中
#!/bin/bash
declare -a arrayZ
arrayZ=( "one" "two" "three" "four" "five" "five" )
for i in `seq $[${#arrayZ[*]}-1]`;do
echo ${arrayZ[$i]}
if [ ${arrayZ[$i]} == bond ];then
echo yes
else
echo no
fi
done
unset arrayZ
3、用命令或者脚本实现 0057AF051EFF 变为 00:57:AF:05:1E:FF
a=0057AF051EFF
echo ${a:0:2}:${a:2:2}:${a:4:2}:${a:6:2}:${a:8:2}:${a:10:2}
4、a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0 ! @ # $ \% ^ & * ( ) - \_ = + \ / ‘ " ; : [ ] { } , . ?
用以上字符,结合数组,实现一个随机生成20位密码的脚本
#!/bin/bash
declare -a a
a=(a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5
6 7 8 9 0 ! @ # $ \% ^ & * ( ) - \_ = + \ / ‘ " ; : [ ] { } , . ?)
for i in `seq 0 19`;do
let i=$[$RANDOM%${#a[*]}]
echo -e "${a[$i]:0:20}c"
done
5、详细叙述centos7开机流程
1,bios加电post自检
2,读取mbr扇区前446字节的grub引导程序,此步骤称为grub1阶段
3.通过grub1阶段找到/boot/中的vmlinuxz。。。 和initramfs。。加载内核和伪文件系统此为1.5阶段
4.通过vmlinuxz 和initramfs定位加载分区文件系统及根目录,驱动模块,此为grub2阶段
5初始化内核,加载第一个程序systemd
6.运行initrd.target所有单元,挂载/etc/fstab分区文件系统
7从initramfs切换到真正的根目录中
8,执行默认target配置/etc/systemd/system/default.target
9,出现登录界面字符或者图形
6、编写nginx的systemd配置文件, 实现nginx进程开机启动
vim usr/lib/systemd/system/httpd.service 最后一行加入WantedBy=muliti-uselti-user.target
手工可执行ln -s /etc/systemd/system/multi-user.target.wants/httpd.service /usr/lib/systemd/system/httpd.service
在/etc/systemd/system/目录中创建一个软连接指向usr/systemd/system/httpd.service就可实现开机启动
用命令实现 systemctl enable httpd
以上是关于linux基础练习8的主要内容,如果未能解决你的问题,请参考以下文章