bash - 在 bash 中将 if 语句压缩为一行
问题描述
我有以下脚本:
#!/usr/bin/bash
arch=`uname -p`
if [[ "$arch" == "x86_64" ]]
then
echo "Yes"
else
echo "No"
fi
有没有办法在命令提示符下将其写为简短的单行代码,$
而不是将其作为脚本。就像是:
$ test uname -p == "x86_64" ? "Yes" : "No"
虽然我不确定 bash 中的三元用法(?)。
解决方案
您可以使用以下内容,&&
如果语句评估为True
,则该部分将运行,||
否则将运行 run:
[ "`uname -p`" = "x86_64" ] && echo "Yes" || echo "No"
推荐阅读
- c++ - (ROS) 如何用相对路径保存日志文件?
- php - 如何在 PHP 的邮件中使用 PHP 三元条件运算符?
- swift - Swift,隐藏/删除窗口(查看?)
- c - 指数函数图
- docker - Mysql 通过 ssh 远程连接到 kubernetes pod
- swift - 如何在 UITableiew 标题中添加自定义控件
- laravel - 在 nova 资源索引视图中显示特定的 eloquent 查询
- javascript - How do I change the format for my uptime command its currently hours I would like to change it to days
- firebase - Vue Firebase / Firestore 重复
- java - Spring Boot with Angular 7 frontend - Prevent accessing site from not-logged-in users