Path: csiph.com!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!not-for-mail From: Greg Wooledge Newsgroups: gnu.bash.bug Subject: Re: problem with extra space; setting? cygwin only? Date: Tue, 23 Jun 2020 15:29:19 -0400 Lines: 30 Approved: bug-bash@gnu.org Message-ID: References: <20200623192919.GJ19673@eeg.ccf.org> NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: usenet.stanford.edu 1592940591 13557 209.51.188.17 (23 Jun 2020 19:29:51 GMT) X-Complaints-To: action@cs.stanford.edu To: bug-bash@gnu.org Envelope-to: bug-bash@gnu.org Mail-Followup-To: bug-bash@gnu.org Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Received-SPF: none client-ip=139.137.100.1; envelope-from=wooledg@eeg.ccf.org; helo=mail.eeg.ccf.org X-detected-operating-system: by eggs.gnu.org: First seen = 2020/06/23 15:29:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -8 X-Spam_score: -0.9 X-Spam_bar: / X-Spam_report: (-0.9 / 5.0 requ) BAYES_00=-1.9, KHOP_HELO_FCRDNS=1, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Mailman-Original-Message-ID: <20200623192919.GJ19673@eeg.ccf.org> X-Mailman-Original-References: Xref: csiph.com gnu.bash.bug:16444 On Tue, Jun 23, 2020 at 12:21:24PM -0700, L A Walsh wrote: > set output > output=""printf ${1:+-v $1} "%s:%s" 23 myproc > -Bash: printf: ` output': not a valid identifier Your command is simply wrong. You've got two double-quotes in a row, which simply cancel each other out, as they contain only the empty string. So, you are running this: output=printf ${1:+-v $1} %s:%s 23 myproc Or in other words, create the environment variable 'output' with content 'printf' in the temporary environment of the command "output", which is generated by the unquoted parameter expansion between the assignment and the %s:%s argument. Moreover, the error message you show is *not* the one generated by this command. unicorn:~$ set output unicorn:~$ output=""printf ${1:+-v $1} "%s:%s" 23 myproc bash: -v: command not found The unquoted parameter expansion ${1:+...} expands to the two words "-v" and "output", so you are attempting to run a command named "-v". Thus, the error that I showed. Either your email does not contain the actual command you're running, or you've misrepresented the error message it produces. Or both.