Những gì tôi đang cố gắng làm là tìm thư mục làm việc hiện tại và lưu nó vào một biến, để tôi có thể chạy export PATH=$PATH:currentdir+somethingelse
. : s không hoàn toàn chắc chắn nếu chúng có một biến chứa cwd theo mặc định.Bash: biến thư mục hiện tại
Trả lời
Điều này tiết kiệm đường dẫn tuyệt đối của thư mục làm việc hiện tại vào biến cwd
:
cwd=$(pwd)
Trong trường hợp của bạn, bạn chỉ có thể làm:
export PATH=$PATH:$(pwd)+somethingelse
vì một số lý do nếu tôi thay đổi sang một thư mục khác, điều này cũng cập nhật biến 'cwd'. Giống như nếu nó gọi hàm 'pwd' mỗi lần ... https://dpaste.de/Kn7F Làm cách nào để tránh điều đó? – tutuca
'$ CWD' có thể là một biến môi trường đặc biệt (dành riêng) trong trình bao của bạn. Thay vào đó, hãy thử một tên khác, chẳng hạn như '$ CWD_MY_VAR' –
Đó chỉ là một tên trình giữ chỗ. Biến của tôi được gọi là 'OLD_PWD' ... – tutuca
cho một người họ hàng câu trả lời , sử dụng .
kiểm tra với:
$ myDir=.
$ ls $myDir
$ cd/
$ ls $myDir
Đầu tiên ls
sẽ hiển thị cho bạn mọi thứ trong thư mục hiện tại, thư mục thứ hai sẽ hiển thị cho bạn mọi thứ trong thư mục gốc (/
).
phân công của bạn có thêm $
:
export PATH=$PATH:${PWD}:/foo/bar
Thêm một biến thể:
export PATH=$PATH:\`pwd`:/foo/bar
Tôi có sau trong .bash_profile của tôi:
function mark {
export $1=`pwd`;
}
nên bất cứ lúc nào tôi muốn nhớ một thư mục, tôi có thể chỉ cần gõ, ví dụ đánh dấu là.
Sau đó, khi tôi muốn quay trở lại vào vị trí đó, tôi chỉ cần gõ cd $ có
Hoạt động tốt nhưng đối với đường dẫn có dấu cách, ví dụ: "Google Drive" bạn phải thực hiện '' 'cd" $ foo "' '' cho toàn bộ đường dẫn được đọc – mercergeoinfo
Để giải quyết vấn đề với khoảng trống trong đường dẫn thay đổi '' 'xuất $ 1 =' pwd' '' ' để '' 'export $ 1 =" 'pwd'" '' 'và sau đó khi gọi các đường dẫn như vậy sử dụng' '' cd "$ foo" '' 'thay vì chỉ' '' cd $ foo''' – mercergeoinfo
Điều này thật tuyệt vời! –
Bạn có thể dùng vỏ trong xây dựng biến PWD
, như thế này:
export PATH=$PATH:$PWD+somethingelse
- 1. PHP Nhận tên thư mục hiện tại
- 2. Tại sao danh sách thư mục chứa thư mục (.) Và thư mục mẹ (..) hiện tại?
- 3. Thực hiện một hàm bash khi nhập một thư mục
- 4. Tạm thời thay đổi thư mục làm việc hiện tại trong bash để chạy lệnh
- 5. Nhận đường dẫn thư mục hiện tại
- 6. Tên thư mục hiện tại trong Ruby?
- 7. vimrc - thư mục làm việc hiện tại
- 8. Recursively scp trừ thư mục hiện tại
- 9. Lấy thư mục batchfile hiện tại
- 10. không thể mã nguồn trong một thư mục hiện tại
- 11. Lưu thư mục hiện tại vào lịch sử zsh
- 12. Bash mkdir và các thư mục con
- 13. lỗi bash mkdir và cp trên đường dẫn biến "không thể tạo thư mục: Không có tệp hoặc thư mục"
- 14. BASH chuyển hướng tạo thư mục
- 15. Lấy Thư mục Hiện tại trong Mục tiêu C
- 16. Bash Đối-Vòng trên Thư mục
- 17. Tcsh và/hoặc hoàn thành thư mục bash với tiền tố gốc ẩn biến
- 18. Đặt tiêu đề của một thư mục ngày trong bash?
- 19. Thoát khỏi thư mục bằng cách sử dụng Git Bash
- 20. Làm cách nào để tạo thư mục trong thư mục làm việc hiện tại, trong Java
- 21. Cách nhập mô-đun từ thư mục bên cạnh thư mục hiện tại?
- 22. Nhận thư mục cha của thư mục hiện tại trong Ruby
- 23. Làm cách nào để hủy thư mục con trong thư mục hiện tại?
- 24. Trong cửa sổ 7 git-bash, có cách nào để khám phá thư mục ở vị trí hiện tại không?
- 25. Lặp qua các thư mục có khoảng trống trong Bash
- 26. Danh sách thư mục bash không mong muốn với *
- 27. Thay đổi thư mục hiện tại của FileSystemObject
- 28. Cách lấy thư mục hiện tại trong chương trình C?
- 29. Java, đọc tệp từ thư mục hiện tại?
- 30. Dịch vụ Windows - lấy thư mục hiện tại
'.' dot nên làm việc. – mcalex
vì vậy để lưu nó vào một biến tôi sẽ làm mydir =. ? –
yup vừa được thử nghiệm với mydir =. sau đó ls $ mydir -but nó tương đối vì vậy nó sẽ là pwd từ bất cứ nơi nào bạn chạy nó – mcalex