Indiciți cum să introduceți o comandă în consola astfel încât să nu atingă istoricul

Uneori este nevoie să introduceți o comandă în consola astfel încât comanda să nu atingă istoricul.
Faceți imediat o rezervare că acest indiciu nu vă salvează de la logarea tuturor comenzilor la nivelul daemonului ssh sau de la conectarea activată în / etc / profile






Am verificat asta în sh, csh și bash. După utilizarea acestei funcții, comanda nu poate fi repetată apăsând săgeata sus și nu apare în ieșirea istoric.

Ideea este foarte simplă - trebuie să puneți un spațiu în fața echipei. Fie că este vorba de o eroare de parser, fie de o fază deliberată. Dar funcționează:

$ uname
Linux
inky @ laptop:

$ uptime
21:29:07 în sus 3:42, 8 utilizatori, media de încărcare: 1.08, 1.05, 1.05
# înainte de această comandă - un spațiu (parserul de apăsare de apă le mănâncă):
inky @ laptop:

$ cat / proc / cpuinfo | grep vânzător
VENDOR_ID. GenuineIntel
VENDOR_ID. GenuineIntel
VENDOR_ID. GenuineIntel
VENDOR_ID. GenuineIntel
inky @ laptop:

$ history | coada -n 4
155 ieșire
156 uname
157 uptime
158 istorie | coada -n 4

Înainte de comanda cat / proc / cpuinfo există un spațiu în acest caz.

Secretul acestui indiciu este dezvăluit. În

/.bashrc ar trebui să fie o linie:
HISTCONTROL = ignoredups: ignorespace
În ubunt și debian pentru implicit este. În debian în bashrc bash nu este. De asemenea, poate fi așa:

export HISTCONTROL = $ HISTCONTROL $ ignoredups
export HISTCONTROL = ignoreboth

← "Aliasuri" pentru ssh. Noi folosim

/.ssh/config pentru a vă simplifica viața.

[Uneori este necesar să introduceți o comandă în consola astfel încât comanda să nu intre în istorie.]







Sincer, ce fel de nevoie sunt acestea? Într-un fel nici măcar nu mă pot gândi la astfel de situații, unde ar trebui să fac o comandă pentru a nu rămâne în istorie. Câteva exemple, puteți? ;-)

De fapt, 2 cazuri globale - atunci când este necesar ca nimeni să nu mai vadă mai târziu această echipă (și sunteți sigur că nu există nici o logare) și atunci când nu doriți să spam în istorie, cu orice comenzi. Dacă mai mult de:
1) predați susținătorului. Server de instruire. Trebuie să creăm o problemă pentru el pe server, apoi să îl rezolvăm. Introducem comenzile din stânga, apoi cu un gol ne introducem pe cele care rupe totul.
2) uneori, este necesar să introduceți o comandă de mai multe ori la rând (bine, aici am un obicei de a scrie acpi constant pentru a urmări curentul de încărcare atunci când acordați bateriile). Avem nevoie de 100500 de echipe identice. Reconfigurați istoricul leneș
3) a face ceva care nu trebuie să fie arătat angajatorului (secrete profesionale sau ceva rușinos) pe serverul său.
4) doar o comandă-spam. Ei bine, de ce naiba în istorie să păstreze tot felul de rm / mv / cp. Sau chiar comanda istoriei?)

# uptime
23:03:54 în sus 23 zile, 3:09, 1 utilizator, medie de încărcare: 0,69, 0,15, 0,05

două, puneți un spațiu înaintea comenzii:
gw

# istorie | coada -n 3
500 uptime
501 uname -a
502 istorie coadă

dacă wordpress-ul a împins din nou spațiile - atunci voi clarifica faptul că în istoria umame - am ajuns cu un spațiu. Debian 5.0
CHYADNT?

întregul punct este adevărat în exportul HISTCONTROL = ignoreboth.
la rădăcină în Debian și toți utilizatorii din genta.bashrc sunt minimaliști, dar utilizatorii obișnuiți debian primesc o mulțime de setări.

Această caracteristică este o eroare de bash`a și este ca și cum, pe același fre în csh acest lucru nu este observat.
Dar sincer, nu am vrut să palitsya atunci când cineva hacking servere / dekstopov, doar script-ul Grepan și curățat totul de la logare despre mine record de toate revistele și povești.

ps pentru viitor: Dacă se întâmplă să găsească pe cineva care o gaură sau fisură în securitate, cererea mare de a nu păstra tăcerea cu privire la aceasta, cu atât mai puțin utilizarea în scopuri rele, și să se joace jocul și să avertizeze proprietarul despre problema. Respectul față de tine întotdeauna se întoarce, crede-mă ...







Trimiteți-le prietenilor: