Câu trả lời:
$ 1 (hoặc $ 2, $ 3 ...) được coi là đối số được đưa ra cho một số tập lệnh.
Đây là một kịch bản ví dụ:
#!/bin/bash
echo "\$1 is now $1"
echo "\$2 is now $2"
echo "\$3 is now $3"
Và đầu ra ví dụ
jaba@lappy:/tmp$ ./example.sh
$1 is now
$2 is now
$3 is now
jaba@lappy:/tmp$ ./example.sh 1 2 3
$1 is now 1
$2 is now 2
$3 is now 3
$ 1 là đối số được truyền cho shell script.
Giả sử, bạn chạy
./myscript.sh hello 123
sau đó
$ 1 sẽ được chào
$ 2 sẽ là 123
Trong trường hợp của bạn, $ 1 in vỏ đăng nhập mặc định được sử dụng vì đối số này được truyền cho tập lệnh chạy shell đăng nhập của bạn. Nhưng nếu bạn sẽ viết và chạy tập lệnh của riêng bạn trong phiên hiện tại, $ 1, $ 2, ... sẽ là các tham số mà bạn gửi đến tập lệnh của mình.