`

linux 命令行参数的说明

阅读更多

今天看了下公司里程序运行完之后自动发email的命令,在Linux下。

用的是Brandon Zehm写的sendEmail程序,参照 http://blogold.chinaunix.net/u2/65354/showart_1897020.html 有说明。

逻辑是先通过myemail.sh args 来调用sendEmail程序。

例如:./myemail.sh 'this is a test',

就会调用

./sendEmail -f xxx@xxx.com -t "xxx@xxx.com" -s 'smtp.xxx.com' -xu xxx@xxx.com -xp 12345 -u ${1:-'test'} -m ${2:-${1:-'test'}}

 

看到有两个参数:-u ${1:-'test'} 和 -m ${2:-${1:-'test'}}

看了下sendEmail程序知道-u是邮件的主题,-m是邮件的内容。

但对跟在后面的参数很不解。

测试了一下发给自己,如果调用命令myemail,若不输入参数,则发送的邮件的主题和内容都是test。

若输入两个参数,则第一个为主题,第二个为内容。

 

所以推测:

${1:-'test'}的作用是先取输入的第一个参数,若为空则默认取-'xxxx'里的内容。

${2:-{$1:-'test'}} 是同样的道理,先取第二个参数,为空则取-{$1:-'test'}的内容。

分享到:
评论

相关推荐

    快乐的Linux命令行

    ### 快乐的Linux命令行知识点详述 #### 引言 - **为什么使用命令行**:在Linux环境中,命令行界面(CLI)提供了一种高效、直接与系统交互的方式。相较于图形用户界面(GUI),命令行允许用户通过简单的文本命令来...

    传带空格的命令行参数

    下面通过一个具体的编程示例来进一步说明如何在 C# 中处理带空格的命令行参数。 #### C# 示例 假设我们需要创建一个进程,并传递一个包含空格的命令行参数。以下是一个基于 C# 的示例代码片段: ```csharp using ...

    Linux命令行操作指令大全

    参数: -n 或 --number 由 1 开始对所有输出的行数编号 -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号 -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行 -v 或 --show...

    快乐的linux命令行

    ### 快乐的Linux命令行知识点详述 #### 引言 - **为什么使用命令行**:在Linux环境中,命令行界面(CLI)提供了一种高效、直接与系统交互的方式。相较于图形用户界面(GUI),命令行允许用户通过简单的文本命令来...

    Linux命令行实例参考手册

    ### Linux命令行实例参考手册知识点解析 #### 一、引言 在Linux系统中,命令行是最常用也是最强大的工具之一。本章节将详细介绍Linux基本网络及文件传输相关的命令,包括`wget`、`lynx`和`ftp`等实用命令的使用方法...

    Linux命令行与shell脚本编程 - mysql数据库操作案例

    在IT领域,Linux命令行和Shell脚本编程是日常运维和开发工作中不可或缺的技能。Linux命令行提供了一种高效、直接的方式来与操作系统交互,而Shell脚本则允许我们编写自动化任务,大大提高了工作效率。在这个“Linux...

    第9章 指针和数组-5指针数组及其应用 - 用指针数组表示命令行参数1

    在本章中,我们将深入探讨一个实际应用案例:如何使用指针数组来处理命令行参数。命令行参数是用户在运行程序时通过操作系统命令行界面传递给程序的额外信息。 首先,理解什么是命令行参数。在图形用户界面(GUI)...

    Linux命令行与shell脚本编程大全案例.zip

    《Linux命令行与Shell脚本编程大全案例》是一本深入探讨Linux操作系统中命令行操作和Shell脚本编程的实用教程。这本书旨在帮助用户熟练掌握在Linux环境中进行日常任务处理和自动化工作流的方法。通过提供的"shell-...

    Linux命令行抓包及包解析工具tshark(wireshark)使用实例解析

    ### Linux命令行抓包及包解析工具tshark(wireshark)使用实例解析 #### 一、引言 在日常运维或网络安全分析工作中,抓取网络数据包并对其进行解析是一项重要的技能。传统的做法是使用`tcpdump`来抓取原始网络数据包...

    最全linux命令行界面操作命令大集合(下).docx

    【标题】: "最全Linux命令行界面操作命令大集合(下)" 【描述】: "这份文档详尽列出了Linux操作系统中的重要命令行工具,包括`rmmod`和`rpm`,帮助用户管理和维护系统模块及软件包。" **rmmod命令详解** `rmmod`是...

    使用 golang 开发 开发 Linux 命令行实用程序 中的 selpg.zip

    在本主题中,我们将深入探讨如何使用Golang(Go语言)开发Linux命令行实用程序,以`selpg`为例。`selpg`可能是一个用于处理数据库查询或管理的工具,因为“pg”通常与PostgreSQL数据库关联。下面,我们将讨论开发...

    Java命令行运行参数说明大全.txt

    #### 三、基本参数说明 ##### 1. `-client` 和 `-server` - **-client**:此参数指示JVM使用客户端模式。客户端模式的JVM通常启动速度较快,但在运行时性能和内存管理效率方面不如服务器模式。它适合于需要快速...

    Linux性能测试工具

    "Linux系统参数说明.pdf"可能详细介绍了这些参数的含义和调整方法,包括内存管理、调度策略、网络配置等方面的参数。"Linux性能测试工具.pdf"和"linux性能优化和分析.ppt"可能提供了更深入的工具使用教程和案例分析...

    linux下的命令行翻译神器

    1. 导入必要的库,如`requests`用于发送HTTP请求,`sys`用于处理命令行参数。 2. 配置百度翻译的API Key和Secret Key。 3. 实现函数,处理命令行输入,如解析单词或句子,或者从`man`或`--help`输出中提取需要翻译的...

    通过命令行管理Linux系统

    ### 通过命令行管理Linux系统 #### 一、实验背景与目标 本实验旨在通过实践操作,...通过以上实验步骤的学习和实践,可以有效地提高对Linux命令行操作的理解和应用能力,为后续更复杂的技术问题解决打下坚实的基础。

    Linux中10个有用的命令行补全例子

    这个教程说明了我们是怎样使用可编程的命令行补全功能(programmable completion)把自动补全功能应用于选项或者命令行参数。  例如:在输入 write 命令之后,如果你按两次 TAB 按键,自动补全功能会提供可供执行 ...

Global site tag (gtag.js) - Google Analytics