#!/bin/bash
for user in `cat /etc/passwd | grep home | awk -F: '{ print $1 }' `
do
homesize=`du -sh /home/$user`
subsize=`du -sh /home/$user/`
done
echo "the size of the $user home directoy is $homesize"
echo "subsize is $subsize"
。
#!/bin/bash
while true;do
if [ "$#" -ne 1 ];
then
echo "Incorrect number of arguments"
exit 1
else
who| grep "^$1" >/dev/null 2>&1
if [ $ -eq 0 ]
then
echo "the user $1 has logged on。"
exit 0
fi
fi
sleep 60
done
简单说:
ls > readmetxt
将ls的输出保存到readmetxt中了,
这个“>"是个管道符号,意思是将前面的输出写道后面的文件里去
ls >> readmetxt
这个“>>"是个也是个管道符号,意思是将前面的输出"追加到“后面的文件末尾
例外情况:
很多程序有两种输出。标准输出和错误输出,
如果你使用了上面的方法也不行的话,可以这样:
ls >> readmetxt 2>1
后面多了个"2>1"意思是说,讲错武的输出也输入到正确的输出频道(其实是管道,但是频道好理解)里去。
ls是要运行的程序名称,可以改成你需要的程序,例如
ps-ef >> readmetxt 2>1
在当前目录下VI个文件,复制一下内容:
#!/bin/bash
TIME_NUM=`date +%H`
if [ "$TIME_NUM" -le "8" ]
then
echo "早上好!$LOGNAME,今天是`date +%D`"
exit 0
fi
if [ "$TIME_NUM" -le "12" ]
then
echo "中午好!$LOGNAME,今天是`date +%D`"
exit 0
fi
if [ "$TIME_NUM" -le "18" ]
then
echo "下午好!$LOGNAME,今天是`date +%D`"
exit 0
fi
echo "晚上好!$LOGNAME,今天是`date +%D`"
在当前用户目录下的profile 添加一下内容
bash 上面的脚本绝对路径
有问题可以再问我
#!/bin/bash
{
for i in `seq 1 10`
do
ping -c 1 abc90-$i
if [ "$" -eq "0" ]; then
ssh abc90-$i hostname
ssh abc90-$i date
fi
done
} &> alog
exit
假定10台机子已经配置好ssh无密码访问
欢迎分享,转载请注明来源:表白网
评论列表(0条)