sách gpt4 ai đã đi

Sự khác biệt giữa Linux khi sử dụng dấu ngoặc

In lại 作者:太空宇宙 更新时间:2023-11-04 12:55:52 28 4
mua khóa gpt4 Nike

为什么在运行 2) 时会出现额外的空行?对我来说 1 就像 2。那么为什么 2) 中的额外行?

1)

export p1=$(cd $(dirname $0) && pwd)
# ^
echo p1

2)

export p2=$(cd $(dirname $0)) && pwd
# ^
echo p2

1 Câu trả lời

$echo $0
/bin/bash
$ echo $(cd $(dirname $0) && pwd)
/thùng
$ echo $(cd $(dirname $0)) && pwd

/home/user
$

在第一个表达式中,它变为 echo $(cd/bin && pwd)。因此,内部 2 个命令在子 shell 中执行并返回 pwd 值,然后回显该值。

在第二个表达式中,它被缩减为 echo $(cd/bin) && pwd。因此只有 cd 命令在子 shell 中执行并且不返回任何内容给 echo(因此默认情况下 echo 只打印一个空行)。由于 echo 成功运行(退出代码=0)&& 结果为 true 并且 pwd cmd 在当前 shell 中运行并且 pwd 被打印

关于何时使用括号之间的 Linux 区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35764323/

28 4 0
太空宇宙
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com