ටර්මිනලයේ, cd
විධානය සමඟ ඩිරෙක්ටරිය වෙනස් කිරීමේදී මා සිටි පෙර ඩිරෙක්ටරියට යාමට යතුරක් නිර්වචනය කරන්නේ කෙසේද?
උදාහරණයක් ලෙස, මම ඉන්නේ /opt/soft/bin
මම cd
බවට /etc/squid3
මම පළමු බහලුම වෙත ආපසු ලබා ගැනීමට අවශ්ය.
ටර්මිනලයේ, cd
විධානය සමඟ ඩිරෙක්ටරිය වෙනස් කිරීමේදී මා සිටි පෙර ඩිරෙක්ටරියට යාමට යතුරක් නිර්වචනය කරන්නේ කෙසේද?
උදාහරණයක් ලෙස, මම ඉන්නේ /opt/soft/bin
මම cd
බවට /etc/squid3
මම පළමු බහලුම වෙත ආපසු ලබා ගැනීමට අවශ්ය.
Answers:
ඔයාට පාවිච්චි කරන්න පුළුවන්
cd -
හෝ ඔබට භාවිතා කළ හැකිය
cd $OLDPWD
cd -
. උදාහරණයක් ලෙස ඔබ ටයිප් කරන විට ඔබ cd /usr/local
සිටින්නේ බව ඔබ දන්නවා /usr/loal
, නමුත් ඔබ ටයිප් කරන විට cd -
ඔබ පැමිණියේ කුමන නාමාවලියෙන්දැයි ඔබට සැමවිටම මතක නැත. එබැවින් එය ටයිප් කිරීමෙන් ඔබව ගලවා ගනී cd -; pwd
. නමුත් මේ සියල්ල සමපේක්ෂනයකි.
alias -- -='cd -'
නම් භාවිතා -
කරනවා වෙනුවට (1 කටු) cd -
(4 කටු). වේගවත්:D
cd -
දෙවරක් කළ හැකිය . එපා cd /; cd /usr; cd -; cd -
ඔබ විය යුතුය /usr
. නමුත් සමහර විට මට ඔබේ ප්රශ්නය තේරුම් ගත නොහැකි විය.
අනෙක් පිළිතුරු අනිවාර්යයෙන්ම answer ජු පිළිතුරු අර්ථයෙන් සම්පූර්ණයි. cd -
හා cd $OLDPWD
නියත මේ සඳහා ප්රධාන තෝරාගැනීම්. කෙසේ වෙතත්, මම බොහෝ විට සොයාගෙන ඇත්තේ වැඩ ප්රවාහයකට සම්බන්ධ වීම pushd
සහ popd
වඩා හොඳින් ක්රියා කිරීමයි.
දිගු කථා කෙටිය, ඔබ ආරම්භ කළ ස්ථානයට නැවත පැමිණීමේ අවසාන අභිප්රාය ඇතිව ඔබ නාමාවලියකට ගමන් කරන්නේ නම්, භාවිතා කරන්න pushd
/ popd
.
ප්රධාන වෙනස උදාහරණයක් මගින් පහසුවෙන් පෙන්වයි.
$ cd dir1
$ pushd dir2
මෙම අවස්ථාවෙහිදී, ඔබට ඩිරෙක්ටරි තොගයක් ඇත dir2, dir1
. pushd
කිසිදු තර්කයක් නොමැතිව ධාවනය කිරීමෙන් ඔබ දැන් නැවත dir1
තොගය සමඟ සම්බන්ධ dir1, dir2
වේ. popd
එයම කරයි, නමුත් ඔබට හිස් ඩිරෙක්ටරි තොගයක් ඉතිරි වේ. මෙය ඔබ cd -
කාර්ය ප්රවාහය සමඟ සිටි ආකාරයට වඩා වෙනස් නොවේ .
කෙසේ වෙතත්, දැන් ඔබට බහලුම් කිහිප වතාවක් වෙනස් කර නැවත ලබා ගත හැකිය dir1
. උදාහරණයක් වශයෙන්,
$ cd dir1
$ pushd dir2
$ cd dir3
ඔබ popd
මෙම අවස්ථාවෙහිදී ධාවනය කරන්නේ නම් , ඔබ නැවත යන්න dir1
.
pushd
ඩිරෙක්ටරි popd
ගොඩගැසිය හැකිය , එබැවින් නැවත නැවත භාවිතා කර -ing අතරතුර පෙර ෆෝල්ඩරයට යන්න .
dirs -v
, නමුත් මට යථාර්ථය නම් බොහෝ විට සරල අවස්ථාව මම සැබවින්ම භාවිතා කිරීමයි. (නැතහොත්, වඩාත් නරක අතට, මම වැරැද්දක් උත්සාහ කරන විට සිදු push +2
හෝ ඒ හා සමාන) ඒ වගේම, මම කෙනෙක් කාර්ය ප්රවාහ උත්සාහ කිරීමට ලබා ගැනීම සඳහා දරුවා පියවර කියලා. :)
cd
වෙමින් තොරව අඩුක්කුව මුදුනට?
popd
කිසිසේත් භාවිතා කිරීමට අවශ්යද? ඔබ පමණක් නොව හැකි cd
සහ pushd
සෑම තැනකම? එසේ කිරීමෙන් යම් අවාසි තිබේද?
ඔබ භාවිතා කළ යුත්තේ:
cd ~-
එය සමාන කරන්නේ cd -
බහලුම මෙම කරදර කාරී සුප්රසිද්ධ echo විධානය නොමැතිව (දැනට පිළිගත් පිළිතුර සිට) සහ වඩා වර්ගය පහසු වේ cd "$OLDPWD"
හෝ cd - > /dev/null
.
alias -- -='cd "$OLDPWD"'
භාවිතා කර ඔබට උත්සාහ කළ හැකි යැයි මම සිතමි . -
cd ~-
:)
cd ~-/..
වැඩ කරන නමුත් cd -/..
එසේ නොවේ!
cd -
ඔබේ ~/.bashrc
ගොනුව සංස්කරණය කිරීමෙන් සහ විධානය සඳහා අන්වර්ථයක් ඇතුළත් කිරීමෙන් ඔබට "යතුරක් අර්ථ දැක්විය හැකිය" . උදාහරණයක් ලෙස ඔබට cdc
එය සෑදීම සඳහා එකතු කළ හැකි අතර එය cd -
එකතු කිරීමෙන් අවසාන නාමාවලිය වෙත යාමට කෙටි මාර්ගයක් ලබා දෙනු ඇත:
alias cdc='cd -'
මේ ආකාරයෙන් ඔබ සරලව ටයිප් කරන cdc
අතර එය ඔබගේ අවසන් වැඩ කරන නාමාවලියට ඇතුළත් වේ.
bind '"\e[24~":"\C-k \C-ucd -\n"'
(හෝ ඊට වඩා inputrc
පිළිතුරේ සඳහන් පරිදි එය ගොනු කිරීමට ගෙනයන්න ).