Bỏ qua

Đường dẫn đến tệp ngoài trong một script phụ thuộc vào cwd, không phải đường dẫn tới script mình đang viết

Ví dụ script.ts này gọi đến file.txt:

const đườngDẫnTươngĐối = '../file.txt'
const nộiDungFile = await Deno.readTextFile(đườngDẫnTươngĐối)
console.log(nộiDungFile)

Ta sẽ chia ra hai trường hợp:

1. file.txt nằm ngoài folder (trong .) :

. 
├── file.txt 
└── folder/ 
    └── script.ts

2. file.txt nằm trong folder (trong ./folder):

. 
└── folder/ 
    ├── script.ts 
    └── file.txt

pwd là thư mục mà process sẽ chạy (process working directory). cwd là thư mục mà mình đang ở đó (current working directory)

Vị trí của file.txt Đường dẫn đến file.txt trong script.ts PWD và lệnh chạy script.ts ở terminal Kết quả
./folder ./file.txt ./folder chạy deno run -A ./script.ts
. ../file.txt ./folder chạy deno run -A ./script.ts
. ./file.txt . chạy deno run -A ./folder/script.ts
. ./file.txt ./folder chạy deno run -A ./script.ts
. ../file.txt . chạy deno run -A ./folder/script.ts
./folder ./file.txt . chạy deno run -A ./folder/script.ts
./folder ../file.txt ./folder chạy deno run -A ./script.ts
./folder ../file.txt . chạy deno run -A ./folder/script.ts

Chính vì như vậy, nên Dùng absolute path cho lành


Cập nhật lần cuối : 20 tháng 4, 2024
Tạo : 9 tháng 1, 2024