English 中文(简体)
我怎么能够检查我的巴什功能是否具有争论?
原标题:How can I check if my Bash function got an argument or not?

快速问题。 我爱心。 我仇恨打脚,因此,我谨使用<条码>e来援引胚胎。

此前,我曾把我的布什-感化(OS X)编成:alias e=“emacs >/code>。 然而,当我只想翻一.时,我仍然不得不打上 em子({档案})。

因此,我试图从一些游乐中抽取,但bash正在抱怨<条码>。

###smart emacs, open file, or if none, dir 
e()
{
    if [$1]; then
        emacs $1
    else
        emacs .
    fi
}

我愿利用这一方法:e some.c or, only e

最佳回答
#!/bin/bash                       

###smart emacs, open file, or if none, dir
e()
{
    if [[ -z "$1" ]]; then # if "$1" is empty
        emacs .
    else
        emacs "$1"
    fi
}
问题回答

提 出

if [ $# -ge 1 ]; then
  emacs "$@"

我认为,灯塔对于空间非常特殊。 我甚至感到惊讶的是,你再次允许在功能名称和(或)功能名称之间留出空间。 (因此,用美元@打开所有通过的文件)

ETA: bettereck against number of debate, in case of e" foo.txt





相关问题
Parse players currently in lobby

I m attempting to write a bash script to parse out the following log file and give me a list of CURRENT players in the room (so ignoring players that left, but including players that may have rejoined)...

encoding of file shell script

How can I check the file encoding in a shell script? I need to know if a file is encoded in utf-8 or iso-8859-1. Thanks

Bash usage of vi or emacs

From a programming standpoint, when you set the bash shell to use vi or emacs via set -o vi or set -o emacs What is actually going on here? I ve been reading a book where it claims the bash shell ...

Dynamically building a command in bash

I am construcing a command in bash dynamically. This works fine: COMMAND="java myclass" ${COMMAND} Now I want to dynamically construct a command that redirectes the output: LOG=">> myfile.log ...

Perform OR on two hash outputs of sha1sum

I want perform sha1sum file1 and sha1sum file2 and perform bitwise OR operation with them using bash. Output should be printable i.e 53a23bc2e24d039 ... (160 bit) How can I do this? I know echo $(( ...

Set screen-title from shellscript

Is it possible to set the Screen Title using a shell script? I thought about something like sending the key commands ctrl+A shift-A Name enter I searched for about an hour on how to emulate ...