मैं मछली में कुछ उपनामों को परिभाषित करना चाहूंगा। स्पष्ट रूप से उन्हें परिभाषित करना संभव होना चाहिए
~/.config/fish/functions
जब मैं खोल को पुनरारंभ करता हूं तो उन्हें ऑटो लोड नहीं होता है। कोई विचार?
मैं मछली में कुछ उपनामों को परिभाषित करना चाहूंगा। स्पष्ट रूप से उन्हें परिभाषित करना संभव होना चाहिए
~/.config/fish/functions
जब मैं खोल को पुनरारंभ करता हूं तो उन्हें ऑटो लोड नहीं होता है। कोई विचार?
जवाबों:
बस उपयोग करें alias
। यहाँ एक मूल उदाहरण दिया गया है:
# Define alias in shell
alias rmi "rm -i"
# Define alias in config file
alias rmi="rm -i"
# This is equivalent to entering the following function:
function rmi
rm -i $argv
end
# Then, to save it across terminal sessions:
funcsave rmi
यह अंतिम कमांड फाइल बनाता है ~/.config/fish/functions/rmi.fish
।
इच्छुक लोग आधिकारिक मैनुअल में मछली के उपनामों के बारे में अधिक जानकारी प्राप्त करना पसंद कर सकते हैं ।
~/.config/fish/config.fish
इसलिए हर बार जब मैं टर्मिनल चलाता हूं तो यह लोड होता है।
"$argv"
बैश के साथ रिक्त स्थान के साथ तर्कों को संभालने के लिए उद्धृत करने की आवश्यकता नहीं है "$@"
?
यह है कि मैं एक नए फ़ंक्शन को कैसे परिभाषित करता हूं foo
, इसे चलाएं, और इसे लगातार बचाएं।
sthorne@pearl~> function foo
echo 'foo was here'
end
sthorne@pearl~> foo
foo was here
sthorne@pearl~> funcsave foo
funced
। जैसे funced foo
।
funcsave {some_function_name}
में यह बचत होगी~/.config/fish/functions/{some_function_name}.fish
पोस्टीरिटी के लिए, मछली उपनाम केवल कार्य हैं:
$ alias foo="echo bar"
$ type foo
foo is a function with definition
function foo
echo bar $argv;
end
इसे दूर करने के लिए
$ unalias foo
/usr/bin/unalias: line 2: unalias: foo: not found
$ functions -e foo
$ type foo
type: Could not find “foo”
funcsave foo
। इससे फंक्शन में बचत होगी ~/.config/fish/functions/foo.fish
, जहां मछली अपने आप इसे पहली बार लोड करेगी जब इसे नए सत्र से बुलाया जाएगा।
alias foo="echo bar"
अब तक सबसे आसान समाधान था
मछली ~ / .config / मछली / config.fish में कमांड निष्पादित करके शुरू होती है। यदि यह मौजूद नहीं है तो आप इसे बना सकते हैं:
vim ~ / .config / मछली / config.fish
और इसके साथ बचाओ :wq
चरण 1। कॉन्फ़िगरेशन फ़ाइल बनाएं (जैसे .bashrc)
config.fish
चरण 2। बस इस तरह अपने उपनाम लिखें;
उर्फ rm = "rm -i"
यदि आप एक के abbr
बजाय एक जोड़ alias
आप बेहतर ऑटो पूरा हो जाएगा। मछली में abbr
अधिक बारीकी से एक बैश उर्फ के व्यवहार से मेल खाता है।
abbr -a gco git checkout
विल -a
एक नया dd abbr
eviation gco
कि करने के लिए फैलता है git checkout
।
~ / .Config / मछली / कार्यों से ठीक से लोड करने के लिए
आप फ़ाइल और नाम फ़ाइल के अंदर केवल एक फ़ंक्शन सेट कर सकते हैं, फ़ंक्शन नाम + ऐडफ़िश एक्सटेंशन के समान फ़ाइल।
इस तरह से फ़ाइल टर्मिनलों में फ़ाइल सामग्री को पुनः लोड करने के कार्य बदलते हैं (ध्यान दें कि कुछ देरी हो सकती है ~ 1-5s)
इस तरह अगर आप कमांडलाइन द्वारा संपादित करते हैं
function name; function_content; end
फिर
funcsave name
आपके पास उपयोगकर्ता क्रम में कंसोल और कस्टम एक ही क्रम में किए गए कार्य हैं।