Настављамо са занимљивим и корисним наредбама које понекад заборавимо да користимо, имајући их у нашем систему. У овом случају ћемо користити онај који нам омогућава да се мало поиграмо са нашом историјом.
Узмимо једноставан пример, отворимо терминал и ставимо:
$ nano /etc/sudoers
Моћи ће схватити да не можемо уређивати датотеку ако нисмо администратори. Дакле, употребимо судо, али како не бисмо поновили наредбу коју смо ставили:
$ sudo !!
И ово ће се поновити:
$ sudo nano /etc/sudoers
Односно, команда !! поновиће наредбу коју смо раније покренули у терминалу. Такође можемо извршити још једну наредбу која претходно није знала њен број у историји.
Отворите терминал и ставите:
$ history
У мом случају то излази отприлике овако:
[цоде] 495 цд Десктоп /496 лс
497 вгет -ц хттп://циннамон.линукминт.цом/тмп/блог/119/цлассиц.пнг
498 цд
499 цвлц музика / Јамендо / Тхе \ Патинеттес \ - \ Блисс \ - \ 2011.06.03 /
500 цвлц музика / рок /
[/ код]
Ако покренем команду !! извршава се претходна команда, што би у овом случају било:
$ cvlc Música/Rock/
Али ако желите да покренете на пример команду:
$ wget -c http://cinnamon.linuxmint.com/tmp/blog/119/classic.png
Морао бих само да ставим:
$ !497
497 је број испред команде. Једноставно, зар не?
Вов, нисам знао ово, врло добре информације, хвала.
Ово ме штеди од притиска стрелице нагоре | старт. Хвала за инфо.
Сматрам да је врло корисно, ово заједно са Цтрл + Р за претрагу команди чини искуство у ттис-у још пријатнијим.
Обично користим а звани за филтрирање:
alias h='history | egrep -i'
Заправо сада, кад размислим, можда је боље додати овакву функцију у .басхрц:
h () {
# Función para listar comandos del historial
HISTERROR="Se puede utilizar como máximo un parámetro."
if [ $# -eq 0 ] ; then
history | less
elsif [ $# -eq 1 ] ; then
history | egrep -i $1 | less
else
echo $HISTERROR
fi
}
На овај начин, само користите h да наведете све наредбе у историји, или х параметар да наведе команде које се подударају са параметром (што успут дозвољава регуларне изразе).
Користим упутства. Онда пробам.