linux脚本判断
#!/bin/bash
Filename=/usr/123.txt
File_time=`stat -c %Y $Filename`;
Sys_time=`date +%s`;
if [ ! -f /usr/123.txt ]; then
echo "0"
else
exit 0
if [ $[ $Sys_time - $File_time ] -gt 300 ];then
echo "1";
else
echo "0";
fi
fi
② 在linux下编写shell脚本,判断当前登录用户是否为学号命名的用户
#!/bin/bash
id="123"
[ `whoami` = "$id" ] && echo 'yes' || echo 'no'
例如:
sh check.sh
#!/bin/sh
echo "Input username:"
read username
if grep -q $username /etc/passwd
then
awk -F: /$username/'{print $7}' /etc/passwd
else
echo "$1 not local user"
fi
(2)linux脚本判断扩展阅读:
Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。 Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。
③ 关于linux,shell脚本中怎样判断文件是否有内容
可以用“test 条件表达式”进行测试,如:test -f /etc/fstab 测试文件/etc/fstab文件是否存在
-e File 如果文件File存在(Exist),则为True
-s File 如果文件File存在且文件大小(Size)大于零,则为True
-f File 如果文件File存在且是普通文件(File),则为True
-d File 如果文件File存在且是目录(Directory),则为True
-b File 如果文件File存在且是块(Block)特殊文件,则为True
-c File 如果文件File存在且是字符(Character)特殊文件,则为True
-L File 如果文件File存在且是符号链接(Link)文件,则为True
-r File 如果文件File存在且是可读的(Readable),则为True
-w File 如果文件File存在且是可写的(Writable),则为True
-x File 如果文件File存在且是可执行的(Executable),则为True
-O File 如果文件File存在且属于当前用户(Owner),则为True
-G File 如果文件File存在且属于当前用户组(Group),则为True
File1 -nt File2 如果文件File1新于(Newer Then) File2,则为True
File2 -ot File2 如果文件File1旧于(Older Then) File2,则为True
④ 每天三分钟搞定linux shell脚本10 字符串相关的if判断
字符串比较包括
注意 :这里的符号要 转义 ,否则变成了重定向了。
运行结果:
注意 :上面的 等号左右两侧 , 中括号内侧 一定要有空格
运行结果:
以上的例子,说明 小写字母排在字典的后面 (类似于ascii的大小)。
sort 可以对字符串排序,sort 命令会把小写字母放在前面 。
运行结果:
注意上面的 中括号内侧 一定要有空格。
注意 :有时候想在字符串比较的时候使用 正则表达式 ,可以使用 双方括号 ,如:
运行如下:
注意:上面的 双等号左右两侧,中括号内侧 一定要有空格
⑤ linux服务器上通过脚本判断ssh服务是否正常
效果: pingsh代码: #ssh连接服务器 function getConnection() { ssh -o NumberOfPasswordPrompts=0 $1@$2 "pwd" &>/dev/null if [ $? != 0 ];then echo -e "
无法连接到$2" continue else echo -e "
成功连接$2" fi } #这里可以通过读取文linux服务器上通过脚本判断ssh服务是否正常
⑥ linux shell脚本判断某个文件的大小,符合条件则备份并重命名
cat test.sh
#!/bin/sh
file=$1
file_size=` $file | awk '{print $2}'`
if [ $file_size -ge 10485760 ]
then
cp -p $file $file-bak
fi
chmod +x test.sh
./test.sh 1.txt
逐行解释
1.
查看脚本文件test.sh
2.
定义脚本默认用sh执行
3.
将文件路径赋予file变量。$1
表示位置变量即下面的1.txt
4.
计算文件大小并赋予file_size变量
5.
如果文件大小大于等于10m.
10485760为10m,-ge为大于等于。
6.
if语法关键字
7.
将文件重命名备份
8.
if语法关键字
9.
空行
10.
赋予脚本test.sh可执行权限
11.
执行脚本,输入位置变量1.txt.
⑦ linux脚本判断进程是否运行
ps -ef|grep 进程关键词
执行上面的命令就可以
⑧ linux判断某服务是否启动脚本怎么写
用ps命令结合grep命令查找该服务名是否存在即可达到效果:
svc="sendmail"
ifps-ef|grep$svc|egrep-vgrep>/dev/null
then
echo"$svcisstarted!"
else
echo"$svcnotfound!"
fi
说明:
ps -ef : 显示当前所有在运行的进程
|:管道,即其前面命令的的输出,作为后面命令的输入
grep service_name : 在输出信息中,查找service_name数据行
egrep -v grep: 不显示grep查找命令本身