Что означает $$ 1 в bash?

Я на самом деле играю с аргументами, и это случилось. Я просто хотел посмотреть, что произойдет, если я наберу $1, и я сделал это и получил что-то ниже.

raja@raja-BONEFISH:~$ $1
19301: command not found

Что означает это 19301, это что-то говорит?

Итог: что значит для $1 в bash.

27
задан 20 May 2014 в 23:03

4 ответа

$ PID (идентификатор процесса) текущего процесса.

$1 вышеупомянутый PID, сопровождаемый литеральной строкой 1.

, Таким образом, это говорит Вам, который Ваш bash процесс с PID 1930.

, Но... свободный прием:

show() { eval echo \$1; }
show PATH
/home/romano/bin:/usr/local/bin:/bin:/usr/bin

(довольно замысловатый, не так ли?)

[еще 1111] информация в TLDP.

0
ответ дан 20 May 2014 в 23:03
  • $ - изодромный с предварением из текущей оболочки (не подокружают) - видят , Каковы специальные переменные оболочки знака доллара?

  • $1 - изодромный с предварением из текущей оболочки (не подокружают), сопровождаемый 1.

  • $2 - изодромный с предварением из текущей оболочки (не подокружают), сопровождаемый 2.

  • $a - изодромный с предварением из текущей оболочки (не подокружают), сопровождаемый a символ.

  • И так далее...

Посмотрите вывод echo $1.

И Вы получаете ошибку command not found, потому что Вы пытаетесь выполнить строку, состоявшую из цифр, который, очевидно, не является командой.

0
ответ дан 20 May 2014 в 23:03

Вы конкатенировали $ и 1 вместе для получения PID текущей оболочки и 1, т.е. $ обозначает PID в настоящее время рабочей оболочки, и 1 просто символ, Вы могли сделать $a, $@ для получения PID со следующим символом.

0
ответ дан 20 May 2014 в 23:03

$$, который это укажет 1930, который является изодромен с предварением из текущей оболочки.

, Когда Вы тип $1, который означает изодромный с предварением сопровождаемый одним так Вы вывод, были бы 19301.

Попытка $2 вывод будет 19302

0
ответ дан 20 May 2014 в 23:03

Другие вопросы по тегам:

Похожие вопросы: