Linux shell if [ -n ] 正确使用方法
if [ str1 = str2 ] 当两个串有相同内容、长度时为真
if [ str1 != str2 ] 当串str1和str2不等时为真
if [ -n str1 ] 当串的长度大于0时为真(串非空)
if [ -z str1 ] 当串的长度为0时为真(空串)
if [ str1 ] 当串str1为非空时为真
shell 中利用 -n 来判定字符串非空。
错误用法:
ARGS=$*
if [ -n $ARGS ]
then
print "with argument"
fi
print " without argument"
不管传不传参数,总会进入if里面。
原因:因为不加“”时该if语句等效于if [ -n ],shell 会把它当成if [ str1 ]来处理,-n自然不为空,所以为正。
正确用法:需要在$ARGS上加入双引号,即"$ARGS".
ARGS=$*
if [ -n "$ARGS" ]
then
print "with argument"
fi
print " without argument"
转载于:https://www.cnblogs.com/dyh004/p/6347226.html
Linux shell if [ -n ] 正确使用方法相关推荐
- Linux shell逐行读取文件的方法
Linux shell逐行读取文件的方法 来源:互联网 在linux中有很多方法逐行读取一个文件的方法,其中最常用的就是下面的脚本里的方法,而且是效率最高,使用最多的方法.为了给大家一个直观的感受, ...
- # Linux shell终端设置代理服务器的方法
Linux shell终端设置代理服务器的方法 文章目录 Linux shell终端设置代理服务器的方法 1 变量列表 2 设置方法 2.1 设置代理 2.2 测试代理 3 软件专用代理 3.1 yu ...
- linux批量重命名脚本,Mac / Linux Shell 批量重命名的方法总览
Linux Shell 批量重命名的方法总览 0.用类似 GPRename 这样的图形软件进行批量重命名 1.删除所有的 .bak 后缀: rename 's/\.bak$//' *.bak 2.把 ...
- linux shell操作mysql,Linux shell操作mysql数据库的方法
摘要 腾兴网为您分享:Linux shell操作mysql数据库的方法,鱼乐贝贝,宜信,嘻嘻动漫,西餐菜谱等软件知识,以及包装效果图,德州人社,evasi0n.com,ios迅雷,民革e家,动态表情, ...
- Linux shell脚本输出日志的方法和案例
Linux shell脚本输出日志 #### log_correct函数打印正确的输出到日志文件 function log_correct () {DATE=`date "+%Y-%m-%d ...
- linux shell 三种自动交互 方法
方法一 自动交互最关键的就是交互信息的自动输入,首先联想到文件重定向,在shell编程中有这样一种用法(参考LINUX与UNIX SHELL编程指南 chapt 5.7):"command ...
- linux shell的输出效果修改方法(界面颜色)
文本终端的颜色可以使用"ANSI非常规字符序列"来生成.举例: echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置 ...
- Linux shell逐行读取文件的方法-比较
From: http://www.embeddedlinux.org.cn/html/jishuzixun/201211/19-2387.html 在linux中有很多方法逐行读取一个文件的方法,其中 ...
- linux shell读取文件,Linux shell逐行读取文件的方法
方法1:while循环中执行效率最高,最常用的方法. function while_read_LINE_bottm(){ While read LINE do echo $LINE done } 注释 ...
最新文章
- 搜索和其他机器学习问题有什么不同?
- linux下 DNS配置过程『罗斌原创』
- error: No curses/termcap library found的解决办法
- 学习Python必会内容:print函数、赋值与代码块
- iPhone 13有搞头,经典功能或将回归!
- 怎么把文件导入云服务器,怎么把文件放到云服务器里
- Kubernetes v1.14.0 之 kube_scheduler 部署
- PyCharm New environment和Existing environment
- html横向导航二级菜单代码,横向二级导航菜单
- 天善智能8月18日上海线下沙龙分享主题— 金融领域的客户洞察与标签体系构建...
- 华为工程师面试题库—通信类
- 论文阅读: Spatial transformer networks
- excel如何快速自动让空白单元格填充上一行内容
- 其他-IMU与AHRS区别
- 【SAP PO】SAP PO 接口日志查询(Monitoring)
- 车载DSP音频功放频率响应曲线2.5到20khz增益降太多是什么原因?
- 软考之计算机系统基础知识
- 47 Three.js使用THREE.ParametricGeometry生成平面图形、波浪图形、和克莱因瓶
- Vagrant 配置/使用手册
- 数据架构师是什么?来看这本书中的介绍
热门文章
- 学习笔记Flink(二)—— Flink数据流模型、时间窗口和核心概念
- 学习笔记Hive(七)—— 自定义函数
- python测试运行快捷键_Python基于unittest实现测试用例执行
- 安卓屏幕适配方案(根据今日头条方案,升级版)
- JavaScript中foreach()用法及使用的坑
- 【TypeScript】通过node-cmd使用代码,执行cmd命令行
- linux信号使用,linux信号使用注意事项
- 【C++】20. const char *str[]、指针的字节长度等 分析
- OpenCV关于hog特征向量的个数
- JavaScript之引用类型