[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Can the exit status of the code block in @(...) be obtained from out
From: |
Hongyi Zhao |
Subject: |
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure? |
Date: |
Sat, 22 Jan 2022 09:28:06 +0800 |
On Sat, Jan 22, 2022 at 3:05 AM Paul Smith <psmith@gnu.org> wrote:
> [...]
> As mentioned before, the entire script must be contained in a single
> logical line if you want the same shell to interpret it all. So you'll
> have to add "\" to combine all these into a single logical line:
Thank you for your above knowledgeable and thorough analysis. Got it.
> define download_and_unpack
> package='$(1)' ; \
> package_URL='$(2)' ; \
> package_directory='$(3)' ; \
> package_code='$(4)' ; \
> package_archive=../archive/`echo "$(package)" | sed 's/.*\///;s/.*=//'` ;
> \
> ( \
> if ! gzip -t $(package_archive) > /dev/null 2>&1 ; then \
I tried with your above trick, but noticed that the variable
package_archive can be expanded correctly:
$ make -j44 w90
[...]
package='wannier90-3.1.0';
package_URL='https://codeload.github.com/wannier-developers/wannier90/tar.gz/v3.1.0';
package_directory='W90'; package_code='wannier90';
package_archive=../archive/`echo "" | sed 's/.*\///;s/.*=//'`;
As you can see, the following command:
package_archive=../archive/`echo "$(package)" | sed 's/.*\///;s/.*=//'`; \
will be passed as:
package_archive=../archive/`echo "" | sed 's/.*\///;s/.*=//'`;
As you can see, the expansion of "$(package)" has been lost. Based on
tries, it seems the following form fixes this problem:
package_archive=../archive/`echo "$$(package)" | sed 's/.*\///;s/.*=//'`; \
Regards,
HZ
- Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, (continued)
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/20
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Paul Smith, 2022/01/21
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?,
Hongyi Zhao <=
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/21
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/21
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/21
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/21
Re: Can the exit status of the code block in @(...) be obtained from outside the @() structure?, Hongyi Zhao, 2022/01/21