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