簡體   English   中英

為什么我的終端腳本無法執行/找到我的 python 腳本?

[英]Why can't my terminal script execute/find my python script?

我正在使用 Linux 終端應用程序,它可以完美運行,但我認為我在這里遇到了問題,我不知道它是應用程序還是我的錯誤

下面是我的 test.sh,#comment 中的所有內容都是我在調用/運行每一行后得到的,但請注意,我猜這通常是 2 個文件,只是將它們放在一起

#!/bin/bash

echo "this is a test"
 # this is a test
ls
 # code downloads
pwd
 # /data/data/com.termux/files/home
ls code
 # python
ls code/python
 # scripts programs
ls code/python/scripts
 # abc.py test.py
cd code/python/scripts
pwd
 #/data/data/com.termux/files/home/code/python/scrips
ls
 # abc.py test.py
python3 test.py
 # hello world
cd
python3 code/python/scrips/abc.py
 # python3: can't open file '/data/data/com.termux/files/home/code/python/scrips/abc.py': [Errno 2] No such file or directory
python3 code/python/scrips/test.py
 # python3: can't open file '/data/data/com.termux/files/home/code/python/scrips/test.py': [Errno 2] No such file or directory

需要注意的是,如果我在home中運行python3 code/python/scrips/abc.py ,它仍然可以工作。 這就是我自己測試和嘗試的所有東西,你在上面看到的只是我“調試”

我以前在這里看到過 shell 編程問題,所以我認為這是一個可以的問題。

這是一個路徑問題。 在運行兩個python3命令之前運行cd之后,您需要檢查返回的路徑。

如果您在子目錄中,例如:sub1

然后,您將前往 sub1/code/python/scripts

但運行cd會將您送回 $HOME 或 /home/username。

這意味着使用 arguments 代碼/python/scripts/abc.py 運行 python3 將始終失敗,因為您不在正確的起始文件夾中。

所以問題是cd行。 這導致了所有問題。

cd && python3 code/python/scrips/abc.py

cd命令僅適用於該信號線的上下文。 在下一行,您將回到當前工作目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM