Fish-shell: لا يمكن تشغيل البرامج النصية للأسماك

تم إنشاؤها على ٣١ مايو ٢٠١٧  ·  3تعليقات  ·  مصدر: fish-shell/fish-shell

نسخة الأسماك: 2.5.0
أوبونتو 16.04 Linux limebox 4.4.0-78-generic #99-Ubuntu SMP Thu Apr 27 15:29:09 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

مرحبًا ، يبدو أنني لا أستطيع تشغيل البرامج النصية للأسماك ، عندما أقوم بإنشاء ملف قابل للتنفيذ echo "echo test" > script.fish ، يؤدي تشغيل fish ./script.fish إلى ظهور رسالة خطأ: ./script.fish: No such file or directory .

إنه يعمل بشكل جيد مع sh -c 'env HOME=$(mktemp -d) fish' ، لسبب ما.

link/.config/fish $ tree
.
├── completions
│   ├── fisher.fish
│   ├── get.fish -> /home/limeth/.config/fisherman/get/completions/get.fish
│   └── git.fish -> /home/limeth/.config/fisherman/git-flow/completions/git.fish
├── conf.d
│   └── git-flow.init.fish -> /home/limeth/.config/fisherman/git-flow/init.fish
├── config.fish
├── fish_colors
├── fishd.limebox
├── fishfile
├── fish_history
├── fish_read_history
└── functions
    ├── cl.fish
    ├── fisher.fish
    ├── fish_greeting.fish -> /home/limeth/.config/fisherman/bobthefish/fish_greeting.fish
    ├── fish_mode_prompt.fish -> /home/limeth/.config/fisherman/bobthefish/fish_mode_prompt.fish
    ├── fish_prompt.fish -> /home/limeth/.config/fisherman/bobthefish/fish_prompt.fish
    ├── fish_right_prompt.fish -> /home/limeth/.config/fisherman/bobthefish/fish_right_prompt.fish
    ├── fish_title.fish -> /home/limeth/.config/fisherman/bobthefish/fish_title.fish
    ├── fish_user_key_bindings.fish
    ├── fzf_key_bindings.fish -> /home/limeth/.fzf/shell/key-bindings.fish
    ├── get.fish -> /home/limeth/.config/fisherman/get/functions/get.fish
    ├── getopts.fish -> /home/limeth/.config/fisherman/getopts/getopts.fish
    └── set_color_custom.fish -> /home/limeth/.config/fisherman/jellyfish/functions/set_color_custom.fish

3 directories, 22 files
$ cat config.fish
# Source dotfiles scripts
source ~/.dotfiles/bin/source.fish

# Enable terminal colors
set -x TERM "xterm-256color"

# Vi mode
# Automatically enable Vi mode in `~/.config/fish/functions/fish_user_key_bindings.fish`
set -g theme_display_vi yes

رابط إلى ~/.dotfiles/bin/source.fish : https://gitlab.com/Limeth/dotfiles/blob/master/bin/source.fish

أي نصائح حول ما يجب أن أبحث عنه هي موضع تقدير.

question

التعليق الأكثر فائدة

حسنًا ، تنتهي أسماكك المصدر بـ cd ~ . هذه فكرة سيئة بشكل عام. يجب أن يحتوي غلاف تسجيل الدخول بالفعل على PWD مضبوطًا على الدليل الرئيسي الخاص بك. وإذا كنت تبدأ في أي مثيل آخر للأسماك ، فأنت لا تريد تغيير الأشخاص ذوي الإعاقة. إذا كنت تشعر أن هناك سببًا وجيهًا للقيام بذلك ، فعليك قصره على الأصداف التفاعلية:

if status is-interactive
    cd ~
end

ال 3 كومينتر

يؤدي تشغيل fish ./script.fish إلى ظهور رسالة خطأ: ./script.fish: لا يوجد مثل هذا الملف أو الدليل.

يبدو هذا كشيء cd s في التكوين الخاص بك.

يرجى محاولة تشغيل هذا الملف ، وعندما يفشل ، قم بتشغيل echo $PWD; fish -c 'echo $PWD' . إذا اختلف الاثنان ، فهذه مشكلتك.

هذا كان هو!

$ echo $PWD
/tmp
$ fish -c "echo \$PWD"
/home/limeth

شكرا جزيلا! :)

حسنًا ، تنتهي أسماكك المصدر بـ cd ~ . هذه فكرة سيئة بشكل عام. يجب أن يحتوي غلاف تسجيل الدخول بالفعل على PWD مضبوطًا على الدليل الرئيسي الخاص بك. وإذا كنت تبدأ في أي مثيل آخر للأسماك ، فأنت لا تريد تغيير الأشخاص ذوي الإعاقة. إذا كنت تشعر أن هناك سببًا وجيهًا للقيام بذلك ، فعليك قصره على الأصداف التفاعلية:

if status is-interactive
    cd ~
end
هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات