On Tue, Jun 20, 2023, at 10:52 PM, LitHack wrote:
> ---------- Forwarded message ---------
> From: LitHack <litha...@gmail.com>
> Date: Wed, Jun 21, 2023, 7:31 AM
> Subject: Command execution by creating file.
> To: <zsh-work...@zsh.org>
>
>
> Special character '*' can be used to execute the command.
> We have to just create a directory and make a file of any character or word
> and then make alias of the command which we want to execute assigned with
> created file. Now just type the * in terminal and you will that the command
> be executed.

This is not true.  Alias expansion occurs before filename expansion.

> But why this happens, * (special character) is used for auto completion and
> if used as alone it should just print the name of file why it's execute the
> file name as command.

This is not true either.  What makes you think that it should "just
print the name of file"?

> Command:mkdir dir;cd dir:<>file;alias file=ls -l;*

Did you actually run these commands?  They don't agree with you.

        bash-5.2$ mkdir dir
        bash-5.2$ cd dir
        bash-5.2$ <> file
        bash-5.2$ alias file='ls -l'
        bash-5.2$ *
        Usage: file [bcCdEhikLlNnprsvzZ0] [-e test] [-f namefile] [-F 
separator] [-m magicfiles] [-M magicfiles] file...
               file -C -m magicfiles
        Try `file --help' for more information.

-- 
vq

Reply via email to