Соңғы команданы «sudo» көмегімен қайталаңыз

sudo командасымен жұмыс істеуге ұмытып кетемін. sudo деген соңғы команданы қайталау үшін bash функциясын (немесе бүркеншік атын) жасауға мүмкіндік іздеймін. Бір нәрсе:

S() {
    sudo $(history 1)
}

Кез келген идеялар?

51
Бүркеншік ат үшін қосымша жұмыс қажет: superuser.com/questions/240180/…
қосылды автор Ciro Santilli 包子露宪 六四事件 法轮功, көзі
Бүркеншік ат үшін қосымша жұмыс қажет: superuser.com/questions/240180/…
қосылды автор Ciro Santilli 包子露宪 六四事件 法轮功, көзі

8 жауаптар

Сіз жаза аласыз:

sudo !!

(See §9.3 "History Expansion" in the Bash Reference Manual.)

94
қосылды

Сіз жаза аласыз:

sudo !!

(See §9.3 "History Expansion" in the Bash Reference Manual.)

94
қосылды

Жеткіліксіз?

sudo !!

егер сіз S жай қаласаңыз:

alias S=sudo

және оны қолданыңыз

S !!

the !! mean the last command

20
қосылды
Мен оны «өтінемін» деп жалғанған. Ол анаммен жұмыс істеді, ол менің терминалда жұмыс істейді.
қосылды автор Stephan Muller, көзі
Жақсы. Менің пайдалануым нағыз дайындалған пәрмен жолын сценарийге дереу түрлендіру болды: echo !! > script.sh
қосылды автор FractalSpace, көзі

Жеткіліксіз?

sudo !!

егер сіз S жай қаласаңыз:

alias S=sudo

және оны қолданыңыз

S !!

the !! mean the last command

20
қосылды
Мен оны «өтінемін» деп жалғанған. Ол анаммен жұмыс істеді, ол менің терминалда жұмыс істейді.
қосылды автор Stephan Muller, көзі
Жақсы. Менің пайдалануым нағыз дайындалған пәрмен жолын сценарийге дереу түрлендіру болды: echo !! > script.sh
қосылды автор FractalSpace, көзі

!! can be used to reference the last command. So:

sudo !!
12
қосылды

!! can be used to reference the last command. So:

sudo !!
12
қосылды

Пайдаланыңыз alias redo = 'sudo $ (history -p !!) . Бұл жалғыз нәрсе бүркеншікпен жұмыс істейтінін анықтады. Басқа жауаптар қандай да бір себеппен бүркеншік атпен жұмыс істемейді, егер олар тікелей жұмыс істеген кезде жұмыс істесе де, өздерін өзім тексеріп көремін.

11
қосылды

Пайдаланыңыз alias redo = 'sudo $ (history -p !!) . Бұл жалғыз нәрсе бүркеншікпен жұмыс істейтінін анықтады. Басқа жауаптар қандай да бір себеппен бүркеншік атпен жұмыс істемейді, егер олар тікелей жұмыс істеген кезде жұмыс істесе де, өздерін өзім тексеріп көремін.

11
қосылды