Hiện nay, sản lượng Perl của tôi được mã hóa cứng để đổ vào thư mục sau UNIX:Làm cách nào để tạo thư mục nếu thư mục không tồn tại bằng Perl?
my $stat_dir = "/home/courses/".**NEED DIR VAR HERE**;
Các tên tập tin được xây dựng như vậy:
$stat_file = $stat_dir . "/".$sess.substr($yr, 2, 2)."_COURSES.csv";
Tôi cần một cách tiếp cận tương tự để xây dựng thư mục UNIX, nhưng cần phải kiểm tra xem chúng có tồn tại trước khi tạo chúng không.
TÍN DỤNG TÍN DỤNG THƯỞNG THƯỞNG:
Tự động đánh số (sửa đổi) của $ stat_file để khi các tệp này được bơm vào cùng thư mục, chúng không ghi đè hoặc nối thêm vào tệp hiện có trong thư mục. (Tôi không biết câu hỏi này đã được điền vào S.O. - xin lỗi nếu một bài đăng lại)
Kiểm tra $ @ là không đáng tin cậy. Sử dụng eval {mkpath ($ dir); 1} hoặc làm {warn "badness \ n"}. Xem http://search.cpan.org/dist/Acme-ExceptionEater/lib/Acme/ExceptionEater.pm để biết ví dụ về lý do tại sao việc kiểm tra $ @ là xấu. – daotoad
Kể từ v2.09 (2013-01), có vẻ như bây giờ make_path là – kyle