`
诗意的栖居
  • 浏览: 274536 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

关于bash中的“too many arguments”问题

 
阅读更多
if test -z `cat filename`
当filename为空或者只有一行没有空格的字符串的时候,一切正常,反之,则会报,诸如
: too many arguments,甚至是: binary operator expected之类的错误,参见了一下:http://www.ibm.com/developerworks/cn/linux/shell/bash/bash-2/index.html

filename中的空格回车等迷惑了
如果环境变量没放在双引号中,那么bash 认为条件中的自变量过多。可以用双引号将字符串自变量括起来消除该问题。请记住,养成将所有字符串自变量用双引号括起的习惯,将除去很多类似的编程错误。

本文问题解决方法很简单,给命令执行部分加上双引号就可以了:
if test -z "`cat filename`"

其他情况也类似,如果参数多的话,给某个参数加上双引号就可以了
分享到:
评论

相关推荐

    linux bash中too many arguments问题的解决方法

    在Linux的Bash Shell环境中,当你尝试执行一个命令或脚本时,如果你遇到了"too many arguments"的错误,这通常意味着你传递给命令的参数数量超过了它的限制,或者是bash解析命令行的方式导致了误解析。这个问题通常...

    Too many open files 问题的解决.txt

    ### Too many open files 问题详解与解决方案 在Linux系统中,“Too many open files”错误是一个常见的性能瓶颈,尤其是在运行大量并发服务或应用时。这个问题的根本在于操作系统对每个进程可打开的文件数量有限制...

    Too many open files 解决方法

    为了解决“Too many open files”的问题,需要调整Linux系统中进程可以打开的最大文件数。这可以通过两种方式来实现:临时修改和永久修改。 ##### 临时修改 可以使用`ulimit -n`命令临时增加每个进程可以打开的...

    AIX关于Weblogic的报错_Too_many_open_files_的处理

    ### AIX关于Weblogic的报错“Too many open files”的处理 #### 背景与问题概述 在AIX环境中部署Weblogic时,可能会遇到一个常见的错误提示:“Too many open files”。这一错误提示通常出现在系统资源限制不当的...

    linux BASH中文手册

    - **解析**:标签清晰地表明了手册的核心主题是关于Bash的。通过这个标签,用户可以迅速识别出该资源的相关性和实用性。 #### 五、部分内容解析 - **译者序** - **解析**:这部分由译者撰写,介绍了翻译本书的...

    Bash参考手册.pdf

    Bash参考手册.pdf是Bash shell的官方参考手册,涵盖了Bash shell的所有方面,包括基本语法、变量、命令、函数、文件处理、流程控制、输入输出、错误处理等。 1. Bash简介 Bash是GNU项目的一部分,是自由软件基金会...

    Bash脚本编写中遇到的问题

    在Bash脚本编写过程中,开发者常常会遇到各种挑战,这些问题涵盖了语法错误、逻辑陷阱、环境依赖、变量处理等多个方面。下面将详细讨论这些常见问题及其解决方案。 首先,语法错误是初学者最常见的问题之一。Bash...

    BASH中文帮助文档

    BASH 中文帮助文档 BASH 是 GNU Bourne-Again SHell 的缩写,GNU 命令解释程序“Bourne 二世”,是一个功能强大...BASH 广泛应用于 Linux 和 Unix 等操作系统中,适用于脚本编程、自动化任务、日常命令行操作等场景。

    man bash 中文PDF 版

    - **描述**: BASH 是一个与 sh 兼容的命令解释程序,能够执行来自标准输入或文件中的命令。它还融合了 Korn Shell (ksh) 和 C Shell (csh) 中的一些优秀特性。 - **目标**: 成为遵循 IEEE POSIX Shell and Tools ...

    BASH 中文文档

    - **核心概念**:BASH(Bourne Again SHell)是一种Unix shell,广泛应用于Linux操作系统中作为默认shell。本中文文档旨在为用户提供全面深入的学习资料。 #### 二、描述:bash4.0中文参考 你懂的 方便各位下载,...

    BASH中文手册加实例.pdf

    Bash几乎成为所有Linux发行版以及大多数UNIX系统的标配,其作为用户与系统之间的重要交互界面,在日常使用及开发过程中扮演着不可或缺的角色。 - **关键性**:掌握Bash不仅能够提高用户在UNIX/Linux平台上的工作效率...

    解决ssh远程登陆linux显示-bash-4.1$的问题

    以上就是小编为大家带来的解决ssh远程登陆linux显示-bash-4.1$的问题全部内容了,希望大家多多支持软件开发网~ 您可能感兴趣的文章:浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释php $_SERVER windows系统与linux...

    BASH漏洞检查

    Linux中一个对计算机用户造成的威 胁“ Bash” 漏洞

    linux bash shell中文手册

    Linux Bash Shell 中文手册是为Linux用户和系统管理员提供的一份详细指南,涵盖了Bash Shell的基本用法和高级特性。Bash(Bourne-Again SHell)是GNU项目下的Unix/Linux操作系统默认的命令行解释器,它继承并扩展了...

    学习bash 中文第二版

    第二版还加入了一些新命令,增强了... 经过不懈的实践和对实例及问题进行深入的研究后,你会发现《学习bash》对Linux和其他UNIX用户来说是很有价值的。 说明下美中不足的是本电子书不够清晰,只能说明曾经有过这本书。

    Bash使用 文档.doc

    bash 是一种广泛使用的 shellcript 语言,主要应用于 Linux 操作系统中。下面是 bash 的一些重要知识点: 一、什么是 shell shell 是 Linux 系统中,用户和内核之间的交互程序。它翻译用户输入的命令,并将其...

Global site tag (gtag.js) - Google Analytics