Puncte:0

Cum să scapi de spațiul alb din variabila transmisă la cd

drapel be

Folosesc WSL pe Windows 10 cu Ubuntu.
Calea către un director pe care îl folosesc frecvent include un director cu un spațiu în nume. Nu pot schimba acest nume. Calea către director este foarte lungă:
/mnt/c/Utilizatori/nume/Dropbox/PC-ul meu (laptop...)/Desktop/Studies/Python
Așa că aș dori să creez o variabilă în .bashrc cu numele de $PROJECTPATH care ar fi egal cu calea directorului.
Așa aș putea să sun sau să pun un pseudonim cd $PROJECTPATH și ajung la fișierele mele.
Am incercat sa scriu:

PROJECTPATH='/mnt/c/Utilizatori/nume/Dropbox/My\ PC\ \(Laptop...\)/Desktop/Studies/Python'

alias prjct='cd $PROJECTPATH'

dar atunci când rulez prjct, aș primi mesajul de eroare „prea multe argumente”, ceea ce înseamnă că se trece un spațiu către cd.
Cum aș putea scăpa de spațiile albe când trec o variabilă la cd sau la orice altă comandă?
Și ar trebui să export acest tip de variabilă?

drapel cn
Acest efect se numește [diviziunea cuvintelor](https://www.gnu.org/software/bash/manual/bash.html#Word-Splitting). Vedeți [această intrare în wiki-ul bash-hackers.org](https://wiki.bash-hackers.org/syntax/words#word_splitting)
ARunningFridge avatar
drapel be
@glennjackman A funcționat perfect :). Mulţumesc mult!
bac0n avatar
drapel cn
`alias a='cd încorporat "$b";:'` vă puteți termina alias-ul cu `:` sau `true`, aceasta va suprima orice argument suplimentar.
Puncte:2
drapel my

Trebuie să puneți ghilimele duble $PROJECTPATH în dumneavoastră alias definiție.

De asemenea, recomand împotriva barelor oblice inverse în definiția ta variabilă. Este mai puțin lizibil și nu este necesar în acest caz:

PROJECTPATH='/mnt/c/Utilizatori/nume/Dropbox/PC-ul meu (laptop...)/Desktop/Studies/Python'

alias prjct='cd "$PROJECTPATH"'

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.