1.获得字符串长度

可以使用下面的方法获得变量值得长度:

length=${#value}

例如:

[root@gameserver1 shell]# var=12345678
[root@gameserver1 shell]# echo ${#var}
8

这样就能获取变量字符串的长度

2.识别当前所使用的shell

可以用下面的方法获知当前使用的是哪种shell:

echo $SHELL

  或者

echo $0

例如:

[root@gameserver1 shell]# echo $SHELL
/bin/bash
[root@gameserver1 shell]# echo $0
-bash

  

3.检查是否为超级用户

UID是一个重要的环境变量,可以用于检查当前脚本时以超级用户还是以普通用户的身份运行的,例如:

[root@gameserver1 shell]# vim check_user.sh

#!/bin/bash
if [ $UID -ne 0 ];then
echo "Non root user. Please run as root"
else
echo "Root user"
fi
保存并退出 [root@gameserver1 shell]# chmod +x check_user.sh [root@gameserver1 shell]# ./check_user.sh
Root user

root用户的UID是0

最新文章

  1. GO语言总结(5)——类型转换和类型断言
  2. Linux进程间通信(八):流套接字 socket()、bind()、listen()、accept()、connect()、read()、write()、close()
  3. 解决在使用client object model的时候报“object does not belong to a list”错误
  4. File类
  5. Cheatsheet: 2013 07.01 ~ 07.08
  6. U - stl 的 优先队列 Ⅰ
  7. 他们控制的定义(2.3):SurfaceView和SurfaceHolder
  8. 获取所有input值 处理成json格式再利用$.post提交
  9. J2EE进阶(一)随堂笔记
  10. Sqlite操作帮助类
  11. Install Oracle Tuxedo in silent mode
  12. java的static与C#的static的异同
  13. sublime安装说明
  14. kubernetes集群搭建(5):服务发现dns配置
  15. 关于ajax的controller层返回jsp页面多个list
  16. js中if语句的几种优化代码写法
  17. 【HDU5862】Counting Intersections
  18. nodejs之SVG转图片下载方案
  19. bzoj1251: 序列终结者 fhqtreap写法
  20. $.cssHooks 扩展 jquery 的属性操作

热门文章

  1. ThreadPoolExecutor自定义线程池
  2. iOS之正则表达式(一)
  3. 我的 xelatex 模板
  4. 【shell基础】
  5. Office 365 邮件流
  6. 二十、linux文件系统讲解
  7. [LC] 347. Top K Frequent Elements
  8. Android下的鉴权实现方案
  9. linux系统--C语言程序开发的基本步骤(包含gcc的基本步骤)
  10. 安装php5.4 mv9 +apache2.2+mysql5.5问题好多。