मैंने अभी-अभी कोशिश की nano
, और जो मुझे सबसे ज्यादा आश्चर्यजनक लगा वह यह है कि यह आपको चेतावनी भी नहीं देता कि फ़ाइल केवल तभी पढ़ी जाती है जब आप फ़ाइल को संपादित करने का प्रयास करना शुरू करते हैं। ( अद्यतन: जाहिर तौर पर नैनो 2.2 चेतावनी देता है; 2.0 नहीं। )
यहाँ (मूल) लिपि है जो ऐसा करती है।
यह जाँचता है कि क्या आप फ़ाइल को संपादित कर सकते हैं, और यदि आप नहीं कर सकते हैं, तो यह रूट के बजाय "नैनो" चलाता है।
/ usr / स्थानीय / बिन / संपादित (या ~ / बिन / संपादित )
sudo= # empty is false, non-empty is true
editor=nano # XXX check $EDITOR and $VISUAL
if test -e "$1" && test ! -w "$1"; then
if test -t 0 && test -t 2; then
printf "%s is not writable. Edit with sudo? [y/n] " "$1" 1>&2
read -n 1
case $REPLY in
y|Y)
sudo=true
;;
n|N)
sudo=
;;
*)
printf "\nExpected y or n. Exiting.\n" 1>&2
exit 1
;;
esac
else
printf "%s is not writable. Fix the permissions or run \"view\" instead." "$1" 1>&2
exit 1
fi
fi
${sudo:+sudo} "$editor" "$1"
और एक कमांड जिसे मैंने फोन किया view
ताकि आप जान सकें कि अगर आप जानते हैं कि आप कोई बदलाव नहीं करेंगे।
/ usr / स्थानीय / बिन / दृश्य (या ~ / बिन / दृश्य )
editor=nano
readonlyflag=-v
"$editor" $readonlyflag "$1"
वहाँ पहले से ही एक कार्यक्रम कहा जाता है view
जो Vi / Vim का हिस्सा है, इसलिए बेहतर नाम सुझाने के लिए स्वतंत्र महसूस करें।
(लेकिन मुझे लगता है कि इस कार्यक्रम के पूर्ण कार्यान्वयन से विए का view
अतिरेक हो जाएगा।)
पूर्ण संस्करण
vim
। मैं मर्ज पर विचार कर रहा हूं ... हालांकि मैं इस तथ्य पर भी विचार कर रहा हूं कि विम विशिष्ट निर्देश काम नहीं करेंगेnano
।