zsh-users
 help / color / mirror / Atom feed
* Alias help
@ 2021-04-26 22:55 Hoji, Aki
  2021-04-26 23:15 ` Eric Cook
  0 siblings, 1 reply; 8+ messages in thread
From: Hoji, Aki @ 2021-04-26 22:55 UTC (permalink / raw)
  To: zsh-users

Hi, 

I made a following alias and put it in .zshrc;

alias pu ="pip3 list -o | sed "1,2 d" |cut -d ' ' -f1 |  xargs -n1 pip3 install -U”

And when I restart zsh, I got a following error;

/Users/akhst7/.zshrc:109: pip3 list -o | sed 1,2 not found.  

I’d appreciate any help on fixing this.

Thanks in advance. 



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-26 22:55 Alias help Hoji, Aki
@ 2021-04-26 23:15 ` Eric Cook
  2021-04-27  7:10   ` zzapper
  2021-04-27 13:06   ` Akihiko Hohji
  0 siblings, 2 replies; 8+ messages in thread
From: Eric Cook @ 2021-04-26 23:15 UTC (permalink / raw)
  To: zsh-users

On 4/26/21 6:55 PM, Hoji, Aki wrote:
> alias pu ="pip3 list -o | sed "1,2 d" |cut -d ' ' -f1 |  xargs -n1 pip3 install -U”

As a shell function:
pu() {                                                                                                                 ~
   pip3 list -o   |
   sed "1,2 d"    |
   cut -d ' ' -f1 |
   xargs -n1 pip3 install -U
}

While not to the degree of say python, whitespace matters often in shell;
You have an extra space after the name of the alias pu, so the =word triggered a different
feature of zsh that expands the path to a command. in this case "pip3 list -o | sed 1,2"
once you remove the space you still have the problem of not quoting correctly.

alias pu='pip3 list -o | sed "1,2 d" |cut -d '\'' '\'' -f1 |  xargs -n1 pip3 install -U'

Is how to quote that command properly, which is less readable than a function is in my opinion.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-26 23:15 ` Eric Cook
@ 2021-04-27  7:10   ` zzapper
  2021-04-27 20:41     ` Bart Schaefer
  2021-04-29 13:30     ` Daniel Shahaf
  2021-04-27 13:06   ` Akihiko Hohji
  1 sibling, 2 replies; 8+ messages in thread
From: zzapper @ 2021-04-27  7:10 UTC (permalink / raw)
  To: zsh-users


On 27/04/2021 00:15, Eric Cook wrote:
> On 4/26/21 6:55 PM, Hoji, Aki wrote:
>> alias pu ="pip3 list -o | sed "1,2 d" |cut -d ' ' -f1 |  xargs -n1 
>> pip3 install -U”
>
> As a shell function:
> pu() { ~
>   pip3 list -o   |
>   sed "1,2 d"    |
>   cut -d ' ' -f1 |
>   xargs -n1 pip3 install -U
> }
>
> While not to the degree of say python, whitespace matters often in shell;
> You have an extra space after the name of the alias pu, so the =word 
> triggered a different
> feature of zsh that expands the path to a command. in this case "pip3 
> list -o | sed 1,2"
> once you remove the space you still have the problem of not quoting 
> correctly.
>
> alias pu='pip3 list -o | sed "1,2 d" |cut -d '\'' '\'' -f1 | xargs -n1 
> pip3 install -U'
>
> Is how to quote that command properly, which is less readable than a 
> function is in my opinion.
>
thanks for this explanation Eric (I've been having my own battles with 
shell white space recently)

When you are desperate to get something working not noticing a little 
thing like the extra space in >>>>alias pu ="pip3<<<

Pity we don't have an online script tester for zsh (many for bash)

I prefer an Alias to a Function where possible because it's easy to tab 
expand an alias and then if required tweak it




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-26 23:15 ` Eric Cook
  2021-04-27  7:10   ` zzapper
@ 2021-04-27 13:06   ` Akihiko Hohji
  1 sibling, 0 replies; 8+ messages in thread
From: Akihiko Hohji @ 2021-04-27 13:06 UTC (permalink / raw)
  To: zsh-users; +Cc: Eric Cook, zsh

HI Eric, 

Thanks for answering a newbie question.  As zzapper suggested, I might try keeping this command as a function.  

Aki 

> On Apr 26, 2021, at 7:15 PM, Eric Cook <llua@gmx.com> wrote:
> 
> On 4/26/21 6:55 PM, Hoji, Aki wrote:
>> alias pu ="pip3 list -o | sed "1,2 d" |cut -d ' ' -f1 |  xargs -n1 pip3 install -U”
> 
> As a shell function:
> pu() {                                                                                                                 ~
>  pip3 list -o   |
>  sed "1,2 d"    |
>  cut -d ' ' -f1 |
>  xargs -n1 pip3 install -U
> }
> 
> While not to the degree of say python, whitespace matters often in shell;
> You have an extra space after the name of the alias pu, so the =word triggered a different
> feature of zsh that expands the path to a command. in this case "pip3 list -o | sed 1,2"
> once you remove the space you still have the problem of not quoting correctly.
> 
> alias pu='pip3 list -o | sed "1,2 d" |cut -d '\'' '\'' -f1 |  xargs -n1 pip3 install -U'
> 
> Is how to quote that command properly, which is less readable than a function is in my opinion.
> 



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-27  7:10   ` zzapper
@ 2021-04-27 20:41     ` Bart Schaefer
  2021-04-29 13:30     ` Daniel Shahaf
  1 sibling, 0 replies; 8+ messages in thread
From: Bart Schaefer @ 2021-04-27 20:41 UTC (permalink / raw)
  To: zzapper; +Cc: Zsh Users

On Tue, Apr 27, 2021 at 12:11 AM zzapper <zsh@rayninfo.co.uk> wrote:
>
> Pity we don't have an online script tester for zsh (many for bash)

I haven't used it myself, and it's not online, but:
http://rocky.github.io/zshdb/


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-27  7:10   ` zzapper
  2021-04-27 20:41     ` Bart Schaefer
@ 2021-04-29 13:30     ` Daniel Shahaf
  2021-04-29 13:55       ` zzapper
  1 sibling, 1 reply; 8+ messages in thread
From: Daniel Shahaf @ 2021-04-29 13:30 UTC (permalink / raw)
  To: zzapper; +Cc: zsh-users

zzapper wrote on Tue, Apr 27, 2021 at 08:10:54 +0100:
> Pity we don't have an online script tester for zsh (many for bash)

What would that do, and why need it be online?

> I prefer an Alias to a Function where possible because it's easy to tab
> expand an alias and then if required tweak it

With a function, you run fned on it, then invoke edit-command-line and
delete the function's name on the first line, so you're left with an
anonymous function ready to be run.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-29 13:30     ` Daniel Shahaf
@ 2021-04-29 13:55       ` zzapper
  2021-04-29 14:13         ` Daniel Shahaf
  0 siblings, 1 reply; 8+ messages in thread
From: zzapper @ 2021-04-29 13:55 UTC (permalink / raw)
  To: zsh-users


On 29/04/2021 14:30, Daniel Shahaf wrote:
> zzapper wrote on Tue, Apr 27, 2021 at 08:10:54 +0100:
>> Pity we don't have an online script tester for zsh (many for bash)
> What would that do, and why need it be online?
>
>> I prefer an Alias to a Function where possible because it's easy to tab
>> expand an alias and then if required tweak it
> With a function, you run fned on it, then invoke edit-command-line and
> delete the function's name on the first line, so you're left with an
> anonymous function ready to be run.

# did you mean

zed -f myfunc


# thanks for the anonymous function tip



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Alias help
  2021-04-29 13:55       ` zzapper
@ 2021-04-29 14:13         ` Daniel Shahaf
  0 siblings, 0 replies; 8+ messages in thread
From: Daniel Shahaf @ 2021-04-29 14:13 UTC (permalink / raw)
  To: zzapper; +Cc: zsh-users

zzapper wrote on Thu, Apr 29, 2021 at 14:55:56 +0100:
> 
> On 29/04/2021 14:30, Daniel Shahaf wrote:
> > zzapper wrote on Tue, Apr 27, 2021 at 08:10:54 +0100:
> > > Pity we don't have an online script tester for zsh (many for bash)
> > What would that do, and why need it be online?
> > 
> > > I prefer an Alias to a Function where possible because it's easy to tab
> > > expand an alias and then if required tweak it
> > With a function, you run fned on it, then invoke edit-command-line and
> > delete the function's name on the first line, so you're left with an
> > anonymous function ready to be run.
> 
> # did you mean
> 
> zed -f myfunc

Yes.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-04-29 14:14 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-26 22:55 Alias help Hoji, Aki
2021-04-26 23:15 ` Eric Cook
2021-04-27  7:10   ` zzapper
2021-04-27 20:41     ` Bart Schaefer
2021-04-29 13:30     ` Daniel Shahaf
2021-04-29 13:55       ` zzapper
2021-04-29 14:13         ` Daniel Shahaf
2021-04-27 13:06   ` Akihiko Hohji

zsh-users

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.vuxu.org/zsh-users

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V1 zsh-users zsh-users/ http://inbox.vuxu.org/zsh-users \
		zsh-users@zsh.org
	public-inbox-index zsh-users

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.vuxu.org/vuxu.archive.zsh.users


code repositories for the project(s) associated with this inbox:

	https://git.vuxu.org/mirror/zsh/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git