Hướng dẫn copy folder nodejs - sao chép thư mục nodejs
Có vẻ như NCP và cờ lê đều không còn được duy trì. Có lẽ là lựa chọn tốt nhất là sử dụng FS-Extrancp and wrench both are no longer maintained. Probably the best option is to use fs-extra Show
Nhà phát triển cờ lê chỉ đạo người dùng sử dụng 0 vì anh ta đã phản đối thư viện của mìnhCả Copysync & Movesync đều sẽ sao chép và di chuyển các thư mục ngay cả khi họ có tệp hoặc thư mục con và bạn có thể dễ dàng di chuyển hoặc sao chép các tệp bằng cách sử dụng nó & moveSync both will copy and move folders even if they have files or subfolders and you can easily move or copy files using it
HOẶC
KURT 1052 Huy hiệu bạc11 Huy hiệu đồng2 silver badges11 bronze badges Đã trả lời ngày 23 tháng 10 năm 2020 lúc 10:07Oct 23, 2020 at 10:07
AryanaryanAryan 3.1392 Huy hiệu vàng16 Huy hiệu bạc41 Huy hiệu đồng2 gold badges16 silver badges41 bronze badges 6 Đây là cách tiếp cận của tôi để giải quyết vấn đề này mà không có bất kỳ mô -đun bổ sung nào. Chỉ cần sử dụng các mô-đun 1 và 2 tích hợp.Lưu ý: Điều này không sử dụng các chức năng đọc / ghi của FS, vì vậy nó không sao chép bất kỳ dữ liệu meta nào (thời gian tạo, v.v.). Kể từ Node.js 8.5, có sẵn chức năng 3 function available which calls the OS copy functions and
therefore also copies meta data. I did not test them yet, but it should work to just replace them. (See https://nodejs.org/api/fs.html#fs_fs_copyfilesync_src_dest_flags)
Đã trả lời ngày 25 tháng 9 năm 2014 lúc 12:43Sep 25, 2014 at 12:43
Simon Zyxsimon ZyxSimon Zyx 5,8431 Huy hiệu vàng24 Huy hiệu bạc36 Huy hiệu đồng1 gold badge24 silver badges36 bronze badges 8 Đây là một chức năng sao chép đệ quy một thư mục và nội dung của nó sang một thư mục khác:
Đã trả lời ngày 5 tháng 3 năm 2014 lúc 0:04Mar 5, 2014 at 0:04
3 Có một số mô -đun hỗ trợ sao chép các thư mục với nội dung của chúng. Phổ biến nhất sẽ là cờ lê.js:
Một giải pháp thay thế sẽ là Node-FS-Extra:
Đã trả lời ngày 9 tháng 12 năm 2012 lúc 9:26Dec 9, 2012 at 9:26
Zemircozemircozemirco 15.8k8 Huy hiệu vàng60 Huy hiệu bạc93 Huy hiệu Đồng8 gold badges60 silver badges93 bronze badges 5 Đây là cách tôi sẽ làm điều đó một cách cá nhân:
Nó hoạt động cho các thư mục và tập tin.
Đã trả lời ngày 14 tháng 9 năm 2018 lúc 19:42Sep 14, 2018 at 19:42 3 Vì nút v16.7.0 có thể sử dụng hàm 4 hoặc 5.
Tính ổn định hiện tại (trong nút v18.7.0) là thử nghiệm.
mất nguồn 20.3k9 Huy hiệu vàng65 Huy hiệu bạc88 Huy hiệu Đồng9 gold badges65 silver badges88 bronze badges Đã trả lời ngày 2 tháng 11 năm 2021 lúc 8:58Nov 2, 2021 at 8:58
Jax-pJax-pJax-p 6.1572 Huy hiệu vàng21 Huy hiệu bạc51 Huy hiệu Đồng2 gold badges21 silver badges51 bronze badges Đối với hệ điều hành Linux/Unix, bạn có thể sử dụng cú pháp shell
Đó là nó!
Đã trả lời ngày 8 tháng 12 năm 2016 lúc 0:58Dec 8, 2016 at 0:58
Abdennour toumiabdennour toumiAbdennour TOUMI 80.1k36 Huy hiệu vàng233 Huy hiệu bạc242 Huy hiệu Đồng36 gold badges233 silver badges242 bronze badges 7 Mô-đun FS-Extra hoạt động như một sự quyến rũ. Cài đặt FS-Extra:
Sau đây là chương trình sao chép thư mục nguồn vào thư mục đích. 0Người giới thiệufs-extra: https://www.npmjs.com/package/fs-extra Ví dụ: Hướng dẫn Node.js - Node.js Sao chép thư mục
Đã trả lời ngày 11 tháng 10 năm 2017 lúc 10:06Oct 11, 2017 at 10:06
Mallikarjun mmallikarjun mMallikarjun M 1.5671 Huy hiệu vàng18 Huy hiệu bạc19 Huy hiệu đồng1 gold badge18 silver badges19 bronze badges 1 Điều này khá dễ dàng với Node.js 10: 1Điều này giả định 6 không tồn tại.
Đã trả lời ngày 28 tháng 9 năm 2018 lúc 20:52Sep 28, 2018 at 20:52
mpenmpenmpen 262K259 Huy hiệu vàng817 Huy hiệu bạc1191 Huy hiệu Đồng259 gold badges817 silver badges1191 bronze badges 4 Tôi biết rất nhiều câu trả lời đã ở đây, nhưng không ai trả lời nó một cách đơn giản. Về tài liệu chính thức của FS-Exra, bạn có thể làm điều đó rất dễ dàng. 2
Đã trả lời ngày 30 tháng 9 năm 2019 lúc 13:03Sep 30, 2019 at 13:03
5 Tôi đã tạo một ví dụ làm việc nhỏ, sao chép thư mục nguồn lên một thư mục đích khác chỉ trong một vài bước (dựa trên câu trả lời của Shift66 bằng NCP): Bước 1 - Cài đặt mô -đun NCP: 3Bước 2 - Tạo COPY.js (sửa đổi các biến SRCPath và DestPath thành bất cứ điều gì bạn cần): 4Bước 3 - Chạy 5
Đã trả lời ngày 3 tháng 2 năm 2016 lúc 16:15Feb 3, 2016 at 16:15
ShaharshaharShahar 2.1891 Huy hiệu vàng25 Huy hiệu bạc32 Huy hiệu đồng1 gold badge25 silver badges32 bronze badges Một trong những hỗ trợ liên kết tượng trưng:symbolic link support: 6Đã trả lời ngày 23 tháng 6 năm 2020 lúc 21:26Jun 23, 2020 at 21:26
allxallxallx 2424 Huy hiệu bạc4 Huy hiệu đồng4 silver badges4 bronze badges Vì tôi chỉ đang xây dựng một tập lệnh Node.js đơn giản, tôi không muốn người dùng tập lệnh cần nhập một loạt các mô -đun và phụ thuộc bên ngoài, vì vậy tôi đã đưa vào giới hạn suy nghĩ của mình và tìm kiếm các lệnh chạy từ các lệnh chạy từ vỏ bash. Snippet mã nút này 7Cảm ơn Lance Pollard tại Dzone vì đã bắt đầu tôi. Đoạn trích ở trên được giới hạn trong các nền tảng dựa trên UNIX, như MacOS và Linux, nhưng một kỹ thuật tương tự có thể hoạt động cho Windows.
Đã trả lời ngày 23 tháng 1 năm 2014 lúc 23:27Jan 23, 2014 at 23:27
Jamesmortensenjamesmortensenjamesmortensen 33.1k11 Huy hiệu vàng95 Huy hiệu bạc118 Huy hiệu đồng11 gold badges95 silver badges118 bronze badges 1 Mallikarjun M, Cảm ơn bạn! FS-Extra đã làm điều đó và nó thậm chí có thể trả lại một lời hứa nếu bạn không cung cấp một cuộc gọi lại! :) did the thing and it can even return a Promise if you do not provide a callback! :) 8
Đã trả lời ngày 16 tháng 4 năm 2018 lúc 19:40Apr 16, 2018 at 19:40
LuckyLookeluckylokeLuckylooke 3.5993 Huy hiệu vàng31 Huy hiệu bạc43 Huy hiệu đồng3 gold badges31 silver badges43 bronze badges 0 Vì nút v16.7.0: 9Lưu ý cẩn thận việc sử dụng 7. Điều này ngăn ngừa lỗi 8.Đọc thêm về tài liệu hệ thống tập tin nút Đã trả lời ngày 29 tháng 3 lúc 21:58Mar 29 at 21:58
Benny Powersbenny PowersBenny Powers 4.9434 Huy hiệu vàng24 Huy hiệu bạc48 Huy hiệu đồng4 gold badges24 silver badges48 bronze badges Tôi đã thử FS-Extra và Copy-DIR để sao chép lại theo dõi. Nhưng tôi muốn nó
Vì vậy, tôi đã viết của riêng tôi: 0Và một chức năng tương tự, MKDIRS, là một giải pháp thay thế cho MKDIRP: 1
Đã trả lời ngày 10 tháng 1 năm 2019 lúc 15:37Jan 10, 2019 at 15:37
Fuweichinfuweichinfuweichin 9919 Huy hiệu bạc11 Huy hiệu đồng9 silver badges11 bronze badges Hãy cẩn thận khi chọn gói hàng của bạn. Một số gói như Copy-DIR không hỗ trợ sao chép các tệp lớn dài hơn 0x1fffffe8 ký tự (khoảng 537 MB). Nó sẽ ném một số lỗi như:
Tôi đã trải nghiệm một cái gì đó như thế này trong một trong những dự án của tôi. Cuối cùng, tôi đã phải thay đổi gói tôi đang sử dụng và điều chỉnh rất nhiều mã. Tôi sẽ nói rằng đây không phải là một trải nghiệm rất dễ chịu. Nếu mong muốn nhiều nguồn và nhiều bản sao đích, bạn có thể sử dụng bản sao tốt hơn và viết một cái gì đó như thế này: 2Hoặc thậm chí: 3
Đã trả lời ngày 22 tháng 5 năm 2020 lúc 0:04May 22, 2020 at 0:04
Donovan Pdonovan pDonovan P 4924 Huy hiệu bạc6 Huy hiệu đồng4 silver badges6 bronze badges Sử dụng shelljs 9 4Đã trả lời ngày 6 tháng 1 năm 2021 lúc 13:47Jan 6, 2021 at 13:47
LiakosliakosLiakos 4544 Huy hiệu bạc10 Huy hiệu đồng4 silver badges10 bronze badges Tôi đã viết chức năng này cho cả hai tệp sao chép (copyfilesync) hoặc di chuyển (Renamesync) đệ quy giữa các thư mục: 5
Jvalanen 2.6991 Huy hiệu vàng15 Huy hiệu bạc9 Huy hiệu đồng1 gold badge15 silver badges9 bronze badges Đã trả lời ngày 23 tháng 4 năm 2019 lúc 8:51Apr 23, 2019 at 8:51
EladtaleladtalEladTal 1.6071 Huy hiệu vàng15 Huy hiệu bạc10 Huy hiệu đồng1 gold badge15 silver badges10 bronze badges Phiên bản TypeScript 6Đã trả lời ngày 23 tháng 3 lúc 12:30Mar 23 at 12:30
stpoastpoastpoa 4.8532 Huy hiệu vàng12 Huy hiệu bạc23 Huy hiệu đồng2 gold badges12 silver badges23 bronze badges 1 Nếu bạn đang sử dụng Linux và hiệu suất không phải là vấn đề, bạn có thể sử dụng hàm 0 từ mô -đun 1, để thực hiện lệnh bash: 7Trong một số trường hợp, tôi thấy giải pháp này sạch hơn hơn là tải xuống toàn bộ mô -đun hoặc thậm chí sử dụng mô -đun 1.
Đã trả lời ngày 3 tháng 3 năm 2020 lúc 8:31Mar 3, 2020 at 8:31
Emilio Grisolíaemilio GrisolíaEmilio Grisolía 1.1731 huy hiệu vàng9 Huy hiệu bạc14 Huy hiệu đồng1 gold badge9 silver badges14 bronze badges 2 Mã này sẽ hoạt động tốt, sao chép đệ quy bất kỳ thư mục nào đến bất kỳ vị trí nào. Nhưng nó chỉ là Windows. 8Nó hoạt động hoàn hảo cho trò chơi văn bản của tôi để tạo người chơi mới.
Đã trả lời ngày 19 tháng 11 năm 2014 lúc 15:06Nov 19, 2014 at 15:06
Nếu bạn muốn sao chép tất cả các nội dung của thư mục nguồn một cách đệ quy thì bạn cần vượt qua tùy chọn 3 dưới dạng 4 và 5 6 được FS-Extra ghi lại cho 7Vì 0 hoàn toàn thay thế 1 nên bạn không cần nhập mô -đun cơ sở 9Đã trả lời ngày 2 tháng 12 năm 2020 lúc 10:42Dec 2, 2020 at 10:42
Ahsan.AminAhsan.AminAhsan.Amin 7166 Huy hiệu bạc14 Huy hiệu Đồng6 silver badges14 bronze badges Đối với các phiên bản nút cũ không có 4, tôi đang sử dụng nó trong một nhúm để tránh yêu cầu thư viện của bên thứ ba: 0Ưu điểm (hoặc phân biệt) liên quan đến câu trả lời hiện có:
Đã trả lời ngày 21 tháng 4 lúc 16:13Apr 21 at 16:13
Ggorlenggorlenggorlen 37.1K7 Huy hiệu vàng61 Huy hiệu bạc78 Huy hiệu đồng7 gold badges61 silver badges78 bronze badges Đây có thể là một giải pháp khả thi sử dụng hàm máy phát Async và lặp lại với vòng lặp 2. Giải pháp này bao gồm khả năng lọc ra một số thư mục truyền chúng như một đối số mảng thứ ba tùy chọn. 1Then: 2Đã trả lời ngày 30 tháng 4 lúc 16:43Apr 30 at 16:43
1 Câu trả lời hàng đầu hiện tại có thể được đơn giản hóa rất nhiều. 3Đã trả lời ngày 3 tháng 3 lúc 3:44Mar 3 at 3:44
Solosodiumsolosodiumsolosodium 7135 Huy hiệu bạc15 Huy hiệu Đồng5 silver badges15 bronze badges Đây là cách tôi đã làm điều đó: 4Then: 5Sau đó gọi phương thức: 6
Đã trả lời ngày 8 tháng 11 năm 2018 lúc 16:35Nov 8, 2018 at 16:35
Uyghurbeguyhurbeguyghurbeg 1583 Huy hiệu bạc7 Huy hiệu đồng3 silver badges7 bronze badges Vâng, function copyFolderSync(from, to) { fs.mkdirSync(to); fs.readdirSync(from).forEach(element => { if (fs.lstatSync(path.join(from, element)).isFile()) { fs.copyFileSync(path.join(from, element), path.join(to, element)); } else { copyFolderSync(path.join(from, element), path.join(to, element)); } }); } 3 là function copyFolderSync(from, to) { fs.mkdirSync(to); fs.readdirSync(from).forEach(element => { if (fs.lstatSync(path.join(from, element)).isFile()) { fs.copyFileSync(path.join(from, element), path.join(to, element)); } else { copyFolderSync(path.join(from, element), path.join(to, element)); } }); } 4 mặc dù ...Bạn có thể muốn/nên hứa hóa chức năng của nó để làm cho nó 5. Trong khi bạn đang ở đó, hãy thêm nó vào tệp 6 để sử dụng lại nó.Dưới đây là phiên bản làm việc là 7 và sử dụng 8.Tệp Index.js 7Công cụ tập tin.js 8
Đã trả lời ngày 18 tháng 10 năm 2017 lúc 3:37Oct 18, 2017 at 3:37
MickmickMick 29.3K13 Huy hiệu vàng108 Huy hiệu bạc130 Huy hiệu đồng13 gold badges108 silver badges130 bronze badges Cách tiếp cận dễ nhất cho vấn đề này là chỉ sử dụng mô -đun 'FS' và 'Path' và một số logic ... Tất cả các tệp trong thư mục gốc với tên mới nếu bạn muốn chỉ đặt số phiên bản, tức là, "var v = 'tên thư mục của bạn'" Trong tiền tố tên tệp với nội dung được thêm với tên tệp. 9
Đã trả lời ngày 25 tháng 8 năm 2018 lúc 9:55Aug 25, 2018 at 9:55
MM Furkanmm FurkanMM Furkan 531 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges 0 |