linux+sh输入sftp,SHELL学习之sftp输入重定向

上周出差联想EMC的VNX存储培训,长了不少见识,知道了西瓜哥这个人物,也略微明白和原厂工程师的差距在哪些方面。而他们良好的精神面貌,热情专研的态度,给我留下了深刻的印象。

回来继续shell脚本的学习,今晚的进度如下:#!/bin/bash

#this is a scripts that auto sftp accounts' info to server

#version 0.1

DATE=$(date +%Y-%m-%d)

#对IP的获取还有待提高,不一定都是eth0

arg=`ifconfig eth0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "`

IP=`ifconfig eth0 | grep "net add" | awk '{print $2}' |sed 's/addr://g'`

#简单的复制和打包

cp /etc/passwd /home

mv /home/passwd /home/"$DATE"-"$IP"passwd

tar -cf "$DATE"-"$IP".tar "$DATE"*

sftp 192.168.1.151<

cd /home

lcd /home/qujun

put "$DATE"-"$IP".tar

bye

EOF

#上传完成后删除源文件

if [ "$?"=0 ];then

rm -f "$DATE"*

else

exit 1

fi

遗留问题有:1、获取正确IP可能还要for循环

2、添加每月的计划任务

3、继续深入学习sed和awk

update:3.18

#!/bin/bash

#this is a scripts that auto sftp accounts' info to server

#version 0.3

#获取IP和日期

DATE=$(date +%Y-%m-%d)

#arg=`ifconfig eth0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "`

#IP=`ifconfig eth0 | grep "net add" | awk '{print $2}' |sed 's/addr://g'`

i=0

while [ $i -lt 5 ]

do

IP=`ifconfig eth"$i" | grep "net add" | awk '{print $2}' |sed 's/addr://g'`

if [ -z "$IP" ];then

:

else

break

fi

let i=$i+1

done

#拷贝和打包

cp /etc/passwd /opt/

cp /etc/shadow /opt/

mv /opt/passwd /opt/"$IP"-"$DATE"passwd

mv /opt/shadow /opt/"$IP"-"$DATE"shadow

tar -cf "$IP"-"$DATE".tar "$IP"*

#sftp上传

sftp 10.108.7.23<

#cd /home

lcd /opt/

put "$IP"-"$DATE".tar

bye

EOF

#删除源文件

if [ "$?"=0 ];then

rm -f "$IP"*

else

exit 1

fi

#添加计划任务,每个月20号执行

#chkconfig --level 345 atd on

#/etc/init.d/atd restart

#at 1:00 +1 month -f /opt/userchk

tmp=`crontab -l`

echo "$tmp" |grep userchk >>/dev/null 2>&1

if [ $?=0 ];then

exit

else

echo "* * 20 * * bash /opt/userchk >>/dev/null 2>&1">>/var/spool/cron/root

fi

exit 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值