เจธเฉฑเจค เจ…เจšเจพเจจเจ• เจฌเฉˆเจธเจผ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ

เจฌเจพเจฐเฉ‡ เจจเฉ‹เจŸเจธ เจฆเฉ€ เจฒเฉœเฉ€ เจจเฉ‚เฉฐ เจœเจพเจฐเฉ€ เจฐเฉฑเจ–เจฃเจพ เจ˜เฉฑเจŸ เจœเจพเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจซเฉฐเจ•เจธเจผเจจ bash, เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเฉฑเจค เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเจฟเจ–เจพเจตเจพเจ‚เจ—เจพ เจœเจฟเจจเฉเจนเจพเจ‚ เจฌเจพเจฐเฉ‡ เจคเฉเจธเฉ€เจ‚ เจธเจผเจพเจ‡เจฆ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเฉ‡ เจนเฉ‹เจตเฉ‹เจ—เฉ‡เฅค

1) PROMPT_COMMAND

เจคเฉเจธเฉ€เจ‚ เจธเจผเจพเจ‡เจฆ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจœเจพเจฃเจฆเฉ‡ เจนเฉ‹เจตเฉ‹เจ—เฉ‡ เจ•เจฟ เจตเฉฑเจ–-เจตเฉฑเจ– เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจฟเจ–เจพเจ‰เจฃ เจฒเจˆ เจชเฉเจฐเฉ‹เจ‚เจชเจŸ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฆเจฒเจฃเจพ เจนเฉˆ, เจชเจฐ เจนเจฐ เจ•เฉ‹เจˆ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเจพ เจนเฉˆ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจนเจฐ เจตเจพเจฐ เจชเฉเจฐเฉ‹เจ‚เจชเจŸ เจฆเจฟเจ–เจพเจ เจœเจพเจฃ 'เจคเฉ‡ เจธเจผเฉˆเฉฑเจฒ เจ•เจฎเจพเจ‚เจก เจšเจฒเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจตเจพเจธเจคเจต เจตเจฟเฉฑเจš, เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจชเฉเจฐเฉ‹เจ‚เจชเจŸ เจฎเฉˆเจจเฉ€เจชเฉเจฒเฉ‡เจŸเจฐ เจ‡เจธ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจชเฉเจฐเฉ‹เจ‚เจชเจŸ เจตเจฟเฉฑเจš เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจœเจพเจฃเจ•เจพเจฐเฉ€ เจ‡เจ•เฉฑเจ เฉ€ เจ•เจฐเจจ เจฒเจˆ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฒเจˆ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจจเจตเฉ‡เจ‚ เจธเจผเฉˆเฉฑเจฒ เจตเจฟเฉฑเจš เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเฉ‹ เจ…เจคเฉ‡ เจตเฉ‡เจ–เฉ‹ เจ•เจฟ เจธเฉˆเจธเจผเจจ เจฆเจพ เจ•เฉ€ เจนเฉเฉฐเจฆเจพ เจนเฉˆ:

$ PROMPT_COMMAND='echo -n "writing the prompt at " && date'

2) HISTTIMEFORMAT

เจœเฉ‡เจ•เจฐ เจšเจฒเจพเจ‡เจ† เจœเจพเจตเฉ‡ history เจ•เฉฐเจธเฉ‹เจฒ เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจ–เจพเจคเฉ‡ เจฆเฉ‡ เจ…เจงเฉ€เจจ เจชเจนเจฟเจฒเจพเจ‚ เจšเจฒเจพเจ เจ—เจ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ‚เจšเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹เจ—เฉ‡เฅค

$ HISTTIMEFORMAT='I ran this at: %d/%m/%y %T '

เจ‡เฉฑเจ• เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจ‡เจน เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจธเฉˆเฉฑเจŸ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจจเจตเฉ€เจ†เจ‚ เจเจ‚เจŸเจฐเฉ€เจ†เจ‚ เจ•เจฎเจพเจ‚เจก เจฆเฉ‡ เจจเจพเจฒ เจธเจฎเจพเจ‚ เจฐเจฟเจ•เจพเจฐเจก เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจ‡เจธ เจฒเจˆ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเฉ‡เจตเฉ‡เจ—เฉ€:

1871 เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เจธ 'เจคเฉ‡ เจšเจฒเจพเจ‡เจ†: 01/05/19 13:38:07 cat /etc/resolv.conf 1872 เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เจธ 'เจคเฉ‡ เจšเจฒเจพเจ‡เจ†: 01/05/19 13:38:19 curl bbc.co.uk 1873 เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจšเจฒเจพเจ‡เจ† : 01/05/19 13:38:41 sudo vi /etc/resolv.conf 1874 เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เจธ 'เจคเฉ‡ เจšเจฒเจพเจ‡เจ†: 01/05/19 13:39:18 curl -vvv bbc.co.uk 1876 เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เจธ 'เจคเฉ‡ เจšเจฒเจพเจ‡เจ†: 01 /05/19 13:39:25 sudo su -

เจซเจพเจฐเจฎเฉˆเจŸเจฟเฉฐเจ— เจคเฉ‹เจ‚ เจ…เฉฑเจ–เจฐเจพเจ‚ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆ man date.

3) CDPATH

เจ•เจฎเจพเจ‚เจก เจฒเจพเจˆเจจ 'เจคเฉ‡ เจธเจฎเจพเจ‚ เจฌเจšเจพเจ‰เจฃ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจฌเจฆเจฒเจฃ เจฒเจˆ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจœเจฟเจตเฉ‡เจ‚ เจคเฉเจธเฉ€เจ‚ เจ•เจฎเจพเจ‚เจก เจœเจพเจฐเฉ€ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เฅค

เจฆเฉ‡ เจจเจพเจฒ เจจเจพเจฒ PATH, เจตเฉ‡เจฐเฉ€เจเจฌเจฒ CDPATH เจฎเจพเจฐเจ—เจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจ•เฉ‹เจฒเฉ‹เจจ-เจตเฉฑเจ– เจ•เฉ€เจคเฉ€ เจธเฉ‚เจšเฉ€ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจ•เจฎเจพเจ‚เจก เจšเจฒเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹ cd เจ‡เฉฑเจ• เจธเฉฐเจฌเฉฐเจงเจฟเจค เจฎเจพเจฐเจ— (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ•เฉ‹เจˆ เจฎเฉ‹เจนเจฐเฉ€ เจธเจฒเฉˆเจธเจผ เจจเจนเฉ€เจ‚) เจฆเฉ‡ เจจเจพเจฒ, เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจธเจผเฉˆเฉฑเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเฉ‡ เจจเจพเจฎเจพเจ‚ เจฒเจˆ เจคเฉเจนเจพเจกเฉ‡ เจธเจฅเจพเจจเจ• เจซเฉ‹เจฒเจกเจฐ เจตเจฟเฉฑเจš เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค CDPATH เจ‰เจธ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจฒเจˆ เจคเฉเจนเจพเจกเฉ‡ เจฆเฉเจ†เจฐเจพ เจฆเจฟเฉฑเจคเฉ‡ เจฎเจพเจฐเจ—เจพเจ‚ เจตเจฟเฉฑเจš เจ–เฉ‹เจœ เจ•เจฐเฉ‡เจ—เจพ เจœเจฟเจธ เจตเจฟเฉฑเจš เจคเฉเจธเฉ€เจ‚ เจœเจพเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹เฅค

เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เจฐเจฆเฉ‡ เจนเฉ‹ CDPATH เจ‡เจธ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ:

$ CDPATH=/:/lib

เจ…เจคเฉ‡ เจซเจฟเจฐ เจฆเจฐเจœ เจ•เจฐเฉ‹:

$ cd /home
$ cd tmp

เจซเจฟเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจนเจฎเฉ‡เจธเจผเจพ เจตเจฟเฉฑเจš เจ–เจคเจฎ เจนเฉ‹ เจœเจพเจตเฉ‡เจ—เจพ /tmp เจญเจพเจตเฉ‡เจ‚ เจคเฉเจธเฉ€เจ‚ เจ•เจฟเฉฑเจฅเฉ‡ เจนเฉ‹เฅค

เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจธเจพเจตเจงเจพเจจ เจฐเจนเฉ‹, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจธเจฅเจพเจจเจ• เจจเฉ‚เฉฐ เจจเจนเฉ€เจ‚ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹ (.) เจซเฉ‹เจฒเจกเจฐ, เจซเจฟเจฐ เจคเฉเจธเฉ€เจ‚ เจ•เฉ‹เจˆ เจนเฉ‹เจฐ เจซเฉ‹เจฒเจกเจฐ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ‡ เจฏเฉ‹เจ— เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‹เจ—เฉ‡ tmp เจ…เจคเฉ‡ เจ†เจฎ เจตเจพเจ‚เจ— เจ‡เจธ 'เจคเฉ‡ เจœเจพเจ“:

$ cd /home
$ mkdir tmp
$ cd tmp
$ pwd
/tmp

เจ“เจน!

เจ‡เจน เจ‰เจฒเจเจฃ เจฆเฉ‡ เจธเจฎเจพเจจ เจนเฉˆ เจœเฉ‹ เจฎเฉˆเจ‚ เจฎเจนเจฟเจธเฉ‚เจธ เจ•เฉ€เจคเจพ เจœเจฆเฉ‹เจ‚ เจฎเฉˆเจจเฉ‚เฉฐ เจ…เจนเจฟเจธเจพเจธ เจนเฉ‹เจ‡เจ† เจ•เจฟ เจธเจฅเจพเจจเจ• เจซเฉ‹เจฒเจกเจฐ เจจเฉ‚เฉฐ เจตเจงเฉ‡เจฐเฉ‡ เจœเจพเจฃเฉ‚ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€. PATH... เจชเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธเจจเฉ‚เฉฐ เจ†เจชเจฃเฉ‡ PATH เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจตเจฟเฉฑเจš เจ•เจฐเจจเจพ เจชเจตเฉ‡เจ—เจพ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉเจ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เฉ€เจคเฉ‡ เจ•เฉ‹เจก เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจœเจพเจ…เจฒเฉ€ เจ•เจฎเจพเจ‚เจก เจšเจฒเจพเจ‰เจฃ เจฒเจˆ เจงเฉ‹เจ–เจพ เจฆเจฟเฉฑเจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจฎเฉ‡เจฐเจพ เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€ เจฌเจฟเฉฐเจฆเฉ‚ เจฆเฉเจ†เจฐเจพ เจธเฉˆเฉฑเจŸ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ:

CDPATH=.:/space:/etc:/var/lib:/usr/share:/opt

4) SHLVL

เจ•เฉ€ เจคเฉเจธเฉ€เจ‚ เจ•เจฆเฉ‡ เจธเฉ‹เจšเจฟเจ† เจนเฉˆ, เจŸเจพเจˆเจชเจฟเฉฐเจ— exit เจ•เฉ€ เจ‡เจน เจคเฉเจนเจพเจจเฉ‚เฉฐ เจคเฉเจนเจพเจกเฉ‡ เจฎเฉŒเจœเฉ‚เจฆเจพ เจฌเฉˆเจธเจผ เจธเจผเฉˆเฉฑเจฒ เจคเฉ‹เจ‚ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ "เจชเฉ‡เจฐเฉˆเจ‚เจŸ" เจธเจผเฉˆเฉฑเจฒ เจตเจฟเฉฑเจš เจฒเฉˆ เจœเจพเจตเฉ‡เจ—เจพ, เจœเจพเจ‚ เจ•เฉ€ เจ‡เจน เจ•เฉฐเจธเฉ‹เจฒ เจตเจฟเฉฐเจกเฉ‹ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจฌเฉฐเจฆ เจ•เจฐ เจฆเฉ‡เจตเฉ‡เจ—เจพ?

เจ‡เจน เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจ‡เจธ เจ—เฉฑเจฒ เจฆเจพ เจงเจฟเจ†เจจ เจฐเฉฑเจ–เจฆเจพ เจนเฉˆ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจฌเฉˆเจธเจผ เจธเจผเฉˆเฉฑเจฒ เจตเจฟเฉฑเจš เจ•เจฟเฉฐเจจเฉ‡ เจกเฉ‚เฉฐเจ˜เฉ‡ เจจเฉ‡เจธเจŸเจก เจนเฉ‹เฅค เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจจเจตเจพเจ‚ เจŸเจฐเจฎเฉ€เจจเจฒ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจ‡เจน 1 'เจคเฉ‡ เจธเฉˆเฉฑเจŸ เจนเฉˆ:

$ echo $SHLVL
1

เจซเจฟเจฐ, เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจธเจผเฉˆเฉฑเจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจธเฉฐเจ–เจฟเจ† เจตเฉฑเจง เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ:

$ bash
$ echo $SHLVL
2

เจ‡เจน เจ‰เจนเจจเจพเจ‚ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจฌเจนเฉเจค เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจคเฉเจธเฉ€เจ‚ เจจเจฟเจธเจผเจšเจค เจจเจนเฉ€เจ‚ เจนเฉ‹ เจ•เจฟ เจฌเจพเจนเจฐ เจจเจฟเจ•เจฒเจฃเจพ เจนเฉˆ เจœเจพเจ‚ เจจเจนเฉ€เจ‚, เจœเจพเจ‚ เจ‡เจธ เจ—เฉฑเจฒ เจฆเจพ เจงเจฟเจ†เจจ เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจ•เจฟเฉฑเจฅเฉ‡ เจจเฉ‡เจธเจŸเจก เจนเฉ‹เฅค

5) LINENO

เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฎเฉŒเจœเฉ‚เจฆเจพ เจธเจฅเจฟเจคเฉ€ เจฆเจพ เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจฃ เจ•เจฐเจจ เจ…เจคเฉ‡ เจกเฉ€เจฌเฉฑเจ— เจ•เจฐเจจ เจฒเจˆ เจตเฉ€ เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉˆ LINENO, เจœเฉ‹ เจนเฉเจฃ เจคเฉฑเจ• เจธเฉˆเจธเจผเจจ เจตเจฟเฉฑเจš เจšเจฒเจพเจˆเจ†เจ‚ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจฆเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐเจฆเจพ เจนเฉˆ:

$ bash
$ echo $LINENO
1
$ echo $LINENO
2

เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจกเฉ€เจฌเฉฑเจ— เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡ เจ‡เจน เจ…เจ•เจธเจฐ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจตเจฐเจ—เฉ€เจ†เจ‚ เจฒเจพเจˆเจจเจพเจ‚ เจชเจพเจˆเจ†เจ‚ เจœเจพ เจฐเจนเฉ€เจ†เจ‚ เจนเจจ echo DEBUG:$LINENO, เจคเฉเจธเฉ€เจ‚ เจœเจฒเจฆเฉ€ เจ‡เจน เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจธเจ•เฉเจฐเจฟเจชเจŸ เจตเจฟเฉฑเจš เจ•เจฟเฉฑเจฅเฉ‡ เจนเฉ‹ (เจœเจพเจ‚ เจจเจนเฉ€เจ‚)เฅค

6) REPLY

เจœเฉ‡, เจฎเฉ‡เจฐเฉ‡ เจตเจพเจ‚เจ—, เจคเฉเจธเฉ€เจ‚ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ•เฉ‹เจก เจฒเจฟเจ–เจฆเฉ‡ เจนเฉ‹:

$ read input
echo do something with $input

เจ‡เจน เจนเฉˆเจฐเจพเจจเฉ€ เจฆเฉ€ เจ—เฉฑเจฒ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฌเจฃเจพเจ‰เจฃ เจฌเจพเจฐเฉ‡ เจšเจฟเฉฐเจคเจพ เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจจเจนเฉ€เจ‚ เจนเฉˆ:

$ read
echo do something with $REPLY

เจ‡เจน เจ‰เจนเฉ€ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ.

7) TMOUT

เจธเฉเจฐเฉฑเจ–เจฟเจ† เจ•เจพเจฐเจจเจพเจ‚ เจ•เจฐเจ•เฉ‡ เจชเฉเจฐเฉ‹เจกเจ•เจธเจผเจจ เจธเจฐเจตเจฐเจพเจ‚ 'เจคเฉ‡ เจœเจผเจฟเจ†เจฆเจพ เจฆเฉ‡เจฐ เจคเฉฑเจ• เจฐเจนเจฟเจฃ เจคเฉ‹เจ‚ เจฌเจšเจฃ เจฒเจˆ เจœเจพเจ‚ เจ—เจฒเจค เจŸเจฐเจฎเฉ€เจจเจฒ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€ เจจเจพเจฒ เจ•เจฟเจธเฉ‡ เจ–เจคเจฐเจจเจพเจ• เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจคเฉ‹เจ‚ เจฌเจšเจฃ เจฒเจˆ, เจ‡เจธ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจจเฉ‚เฉฐ เจธเฉˆเจŸ เจ•เจฐเจจเจพ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจœเฉ‡เจ•เจฐ เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจจเจฟเจฐเจงเจพเจฐเจค เจธเฉฐเจ–เจฟเจ† เจฒเจˆ เจ•เฉเจ เจตเฉ€ เจฆเจพเจ–เจฒ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจธเจผเฉˆเฉฑเจฒ เจฌเฉฐเจฆ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจญเจพเจต, เจ‡เจน เจ‡เฉฑเจ• เจตเจฟเจ•เจฒเจช เจนเฉˆ sleep 1 && exit:

$ TMOUT=1

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹