Puncte:0

referindu-se la directorul părinte într-un dialog de salvare a fișierului

drapel cn

M-am săturat de actualizările continue din Windows care îmi fac programele inutilizabile. După o excursie la Linux Lite, acum rulez Ubuntu pe laptopul meu Dell, deoarece era distribuția acceptată. Nu sunt TERRIBIL de prost, pot programa în C și îmi amintesc lucruri precum permisiunile de fișiere (grup de utilizatori-toată lumea) din zilele mele SCO. Totuși, ceva ce am încercat să fac nu a avut efectul pe care îl credeam.

Eram într-o casetă de dialog de salvare a fișierului și am vrut să salvez fișierul în directorul părinte fără a schimba directorul de lucru curent, așa că am ÎNCERC să prefix numele fișierului cu „punct dot backslash” pentru a vedea dacă va funcționa (ceva din vremurile bune ale PS-DOS).

Ei bine, știi ce sa întâmplat. A ascuns fișierul în directorul curent.

Nu există nicio modalitate de a face referire la directorul părinte fără a introduce calea completă în dialog dacă nu vreau să schimb directorul de lucru?

drapel hr
Separatorul de cale în \*nix este *forward* slash, nu backslash
Puncte:5
drapel jp

Backslash are o altă semnificație în Linux: scapă de semnificația specială a unui caracter special, astfel încât caracterul literal este folosit. De exemplu . poate însemna directorul curent sau, în unele contexte, „orice caracter unic”. \. înseamnă un punct literal. Înainte de un caracter normal, de exemplu o literă ASCII, bara oblică inversă nu face nicio diferență decât dacă acel caracter este folosit și pentru a reprezenta altceva (de ex. \t este o filă și \n este o linie nouă). Când personajul nu are alt sens, de exemplu A, atunci scăparea nu are efect: \A este A.

Asa de

atingeți ..\asdf

va crea fișierul ascuns ..asdf. (Este suficient cu un punct la începutul numelui fișierului pentru a-l ascunde.)

Linux folosește bara oblică pentru a separa numele directorului și al fișierelor din cale.

atingeți ../asdf

va crea fișierul asdf în directorul părinte.

Puncte:0
drapel cn

Puteți obține directorul părinte folosind funcția dirname. De exemplu:

parentdir=$(dirname `pwd`)

Testează-l de echo $parentdir

Fără a vă vedea scriptul, nu vă pot sfătui cum să utilizați această funcție.

Arthur Grant avatar
drapel cn
Nu era într-un scenariu; Eram într-o casetă de dialog pentru salvarea fișierului, modificând numele fișierului încercând să spun unde vreau fișierul. A fost unul dintre acele lucruri frumoase despre DOS, pentru că nu aveai casete de dialog.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.