从 Bash 函数返回布尔值

2023-12-31

我想编写一个 bash 函数来检查文件是否具有某些属性并返回 true 或 false。然后我可以在我的脚本中的“if”中使用它。但我应该返回什么?

function myfun(){ ... return 0; else return 1; fi;}

然后我像这样使用它:

if myfun filename.txt; then ...

当然这是行不通的。如何才能做到这一点?


使用 0 表示 true,1 表示 false。

Sample:

#!/bin/bash

isdirectory() {
  if [ -d "$1" ]
  then
    # 0 = true
    return 0 
  else
    # 1 = false
    return 1
  fi
}


if isdirectory $1; then echo "is directory"; else echo "nopes"; fi

Edit

从@amichair的评论来看,这些也是可能的

isdirectory() {
  if [ -d "$1" ]
  then
    true
  else
    false
  fi
}


isdirectory() {
  [ -d "$1" ]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Bash 函数返回布尔值 的相关文章

  • Grep 递归和计数

    需要在具有大量子目录的目录中搜索文件内的字符串 我在用着 grep c r string here 我怎样才能找到总数量 如何仅输出至少具有一个实例的文件 使用 Bash 的进程替换 这给出了我认为是您想要的输出 如果不是 请澄清问题 gr
  • 如何回忆上一个 bash 命令的参数?

    Bash 有没有办法回忆上一个命令的参数 我通常这样做vi file c其次是gcc file c Bash 有没有办法回忆上一个命令的参数 您可以使用 or 调用上一个命令的最后一个参数 Also Alt can be used to r
  • 查找并删除超过 x 天的文件或文件夹

    我想删除超过 7 天的文件和文件夹 所以我尝试了 17 07 14 email protected cdn cgi l email protection find tmp mindepth 1 maxdepth 1 ctime 7 exec
  • 在cmake中集成bash测试脚本

    我有一个 C cmake 项目 它使用 Boost Test 进行单元测试 现在我想向 cmake 公开一系列 bash 脚本 用于集成测试 假设每个脚本在以下情况下返回 0PASS或某些情况下 0FAILURE 我希望每次运行时都执行每个
  • 将“NULL”分配给布尔数据类型是否可以接受?

    将 NULL 分配给布尔数据类型是否可以接受 从理论上来说 是的 但这是一件可怕的事情 NULL是一个空指针常量 它被分配给一个指针以使其指向任何内容 ptr NULL now it points to no object anymore
  • sed 和 rev shell 命令转换为 Python 脚本 [重复]

    这个问题在这里已经有答案了 有一个shell命令 我正在尝试将逻辑转换为python 但我不知道该怎么办 我需要一些帮助 shell命令是这样的 cd tests src main test ls find name vrlp while
  • 使用 sed 将反斜杠替换为斜杠[重复]

    这个问题在这里已经有答案了 我需要更换 with 我有一个文件 其中包含 test test2 test3 test4 I tried VRS Ruta cat ruta lst sed s g sed s g output test te
  • 如何使用 nohup 获取正在运行的程序列表

    我正在通过 SSH 连接访问运行 CentOS linux 发行版 的服务器 由于我无法始终保持登录状态 因此我使用 nohup command 来运行我的程序 我找不到如何获取我开始使用 nohup 的所有程序的列表 工作 只有在我注销之
  • 无法从 bash 脚本使用 nvm

    我正在尝试编写一个 shell 脚本来自动设置我的开发环境 安装 python nvm node mongo 等 我正在使用 nvm 来安装 Node js 它告诉您关闭并重新打开终端以开始使用 nmv 命令 我尝试获取 bashrc 和
  • 批量检测系统是32位还是64位

    有谁知道如何创建一个批处理文件 如果是 64 位系统 可以对一个程序进行 shell 处理 如果是 32 位系统 则可以对另一个程序进行 shell 处理 检查 PROCESSOR ARCHITECTURE being x86 if PRO
  • 如何将命令输出作为多个参数传递给另一个命令

    我想将命令的每个输出作为多个参数传递给第二个命令 例如 grep pattern input returns file1 file2 file3 我想复制这些输出 例如 cp file1 file1 bac cp file2 file2 b
  • 如何将输出重定向到文件,如果文件不存在则不创建它?

    我需要将输出重定向到一个文件 gt 在 shell 中 但如果该文件尚不存在 则不应创建该文件 如何实现这一目标 我尝试创建文件的符号链接并重定向到符号链接 但不幸的是 如果文件尚不存在 无论如何都会创建文件 也许我需要重定向到一个单独的程
  • 通过 Node.js 运行 bash 脚本 - 非法选项 -o pipelinefail

    我正在尝试使用 Node js 执行 bash 脚本child process exec 然而它在文件的第二行爆炸 usr bin env bash set eo pipefail TRACE set x echo we are here
  • 通过 ssh 运行 Bash 脚本

    我正在尝试编写一个 Bash 脚本 它将通过 SSH 连接到计算机并创建一个目录 长期目标有点复杂 但现在我从简单的开始 然而 虽然很简单 但我似乎不太明白 这是我的代码 bin bash ssh T email protected cdn
  • AJAX 进度条 - 轮询、Comet?

    我想要一些关于如何实施以下内容的建议 我想让我的用户通过 AJAX 了解在我的服务器上运行的任务的进度 我的服务器运行一个 PHP 脚本 该脚本使用 popen 函数通过 shell 命令下载文件 它定期回显 打印正在发生的事情 我想使用
  • 从文件中随机采样行

    我有一个大约 40gb 和 1800000 行的 csv 文件 我想随机采样 10 000 行并将它们打印到一个新文件中 现在 我的方法是将 sed 用作 sed n vars lt input txt gt output txt Wher
  • 使用 volatile bool 强制另一个线程等待是否安全? (C++)

    我读到的有关 volatile 的所有内容都说它永远不安全 但我仍然倾向于尝试它 而且我还没有看到这种特定场景被宣布为不安全 我有一个单独的线程来渲染场景 从主模拟线程中提取数据 这没有同步 并且工作正常 问题是 当程序退出时 渲染器需要停
  • 如何隐藏显示终端命令输出

    当我运行这个命令时 sudo htpasswd b home reynolds htpasswd admin admin 我正在得到输出Updating password for user admin在终端中 但我不想显示该输出 所以我在谷
  • LaunchAgent 不运行 shell 脚本

    在 Catalina 之前的 macOS 下 我有一个每天运行 shell 脚本的 LaunchAgent 升级并切换到 zsh 后 它不起作用 我检查过的事情 shebang 切换到 zsh shell脚本可以从命令行手动执行 sh 在系
  • 如何在bash中进行二进制加法

    我正在尝试将两个 32 位二进制数相加 其中之一是常数 address range in binary 另一个是数组的元素 IPinEachSubnet val 我正在尝试按照说明进行操作here https www linuxquesti

随机推荐

  • 将 GridView 绑定到 Dynamic 或 ExpandoObject 对象

    我正在使用 Rob Conery 的 Massive ORM 但无法绑定结果ExpandoObject to a GridView 我确实发现了另一个 Stackoverflow 问题 建议使用一个名为 impromptu 的框架 但我不确
  • 如何在运行时动态创建控件

    我试图根据正在查看的特定工作表上的列数在 Excel 用户窗体中创建可变数量的控件 组合框 理想情况下 我想在运行时删除现有的并创建新的 而不是创建 100 个左右 然后在可见和不可见之间来回切换 我现在所拥有的将创建一个组合框和循环 但它
  • 已在 StoreKit 中购买订阅

    我在 iOS 应用程序的应用程序购买中使用可更新订阅 当用户尝试购买已付款的订阅时 iTunes 会显示一条消息 您当前已订阅此内容 我如何检测此事件何时发生 以便我可以处理交易并授予对我的应用程序的访问权限 在观察者的 paymentQu
  • 将 IS 上的所有 DTS 包导出到文件系统的脚本

    是否有一个脚本可以将 Integration Services 服务器上的所有 DTS 包导出到一个文件系统路径 即 C DTSPackages 目前 如果脚本存在 右键单击 选择导出 选择文件系统的任务似乎有些多余 但我发现的只是显示存在
  • 当我们有复合索引时,是否需要普通的MySql索引

    我们的 MySql 表有 2500 万行 以下是表中的列 c id c name s id l type l time message domain 其中 我们在 c id c name s id l type domain 列上有正常索引
  • 暴露 net.tcp 端点

    我对如何在 WCF 中公开端点有点困惑 我有一个 tcp 端点和一个 mex tcp 端点
  • 如何使用 jQuery 在页面加载时关注表单输入文本字段?

    这可能非常简单 但是有人可以告诉我如何在页面加载时让光标在文本框上闪烁吗 将焦点设置在第一个文本字段上 input text visible first focus 这也执行第一个文本字段 但您可以将 0 更改为另一个索引 input ty
  • 无法运行 H2o 功能

    我能够很好地安装 h2o 在 R 中 但是当我运行 h2o init 时出现以下错误 h2o init H2O 尚未运行 现在开始 值错误 3L 您有 32 位版本的 Java H2O 在 64 位 Java 上运行效果最佳 请从以下网址下
  • 使用 BS4“lxml”抓取 XML 数据

    尝试解决与此非常相似的问题 使用 beautifulsoup 抓取 XML 元素属性 https stackoverflow com questions 37968565 scraping xml element attributes wi
  • AngularJS Masonry 用于动态改变高度

    我有点击时会展开和收缩的 div Masonry 库对于初始化页面非常有效 我遇到的问题是 通过 Masonry 和下面的指令进行绝对定位 当 div 展开时 它们会与下面的 div 重叠 我需要将扩展 div 下面的 div 向下移动以处
  • 我可以在 Jquery 中组合变量和选择器吗?

    假设我有这个 HTML div class top top div class middle middle div class bottom bottom div middle div top div div class middle ou
  • 是否有 Android 测试服务可以用来为我提供来自设备的真实调试信息? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • .Net矩阵[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • jQuery UI Datepicker:对齐下面的标签问题

    http jsfiddle net r7D2x http jsfiddle net r7D2x 我正在尝试在标签上使用 jQuery Datepicker span 而不是输入字段 这是代码 javascript placeholder d
  • 无法使用 Python/opencv 关闭/打开 CameraCapture:设备或资源繁忙

    当我尝试使用 Python 重新打开 opencv Camera Capture 时 我得到 libv4l2 error setting pixformat Device or resource busy HIGHGUI ERROR lib
  • rvm在centos 5.5上安装1.8.7-head错误

    我在 CentOS 5 5 上以 root 身份成功安装了 rvm 然后我尝试安装 ruby 1 8 7 head rvm 安装 1 8 7 head 并收到这样的错误 将 Ruby 从源代码安装到 usr local rvm rubies
  • 未找到 vtkRenderer/ vtkRenderWindow 的覆盖

    我是 vtk 的新手 当我运行一个小示例时 它会生成两个错误 找不到 vtkRenderer 的覆盖 找不到 vtkRenderWindow 的覆盖 我用谷歌搜索了这个问题 但找不到合适的解决方案 当我尝试在没有 CMake 的情况下创建
  • python 只记录到文件

    我有一个运行 python 脚本的 cronjob 我添加了一个logging但由于这是一项日常工作 我每天都会收到有关其功能的电子邮件 这真的很烦人 但我似乎找不到一个设置 这将使其仅记录到日志文件中 usr bin python imp
  • 使用“__dict__”或“vars()”?

    内置功能vars 对我来说看起来更像Pythonic 但我明白了 dict 使用更频繁 Python 文档表明它们是等效的 一位博主声称 dict 比vars http pythondoeswhat blogspot com 2012 01
  • 从 Bash 函数返回布尔值

    我想编写一个 bash 函数来检查文件是否具有某些属性并返回 true 或 false 然后我可以在我的脚本中的 if 中使用它 但我应该返回什么 function myfun return 0 else return 1 fi 然后我像这