Điểm:0

So sánh cấu trúc của các tập tin

lá cờ lk

Tôi có 2 cấu trúc của các thư mục:

dir1
âââ 1
â âââ tập tin1
âââ 2
â âââ tập tin1
âââ 3
â âââ tập tin1
âââ 4
â âââ tập tin1
âââ 5
    âââ tập tin1
dir2
âââ 1
âââ 2
âââ 5

tôi sử dụng xargs mkdir -p < dirs.txt để tạo file.txt với tên của các thư mục. Trong tệp này, tôi chỉ có đường dẫn đến thư mục, không có tệp trong thư mục. Cách loại bỏ đường dẫn của tệp chỉ bao gồm danh sách thư mục trong dirs.txt?

Ví dụ: Tôi cần lấy ra từ dir1 cấu trúc của các thư mục từ dir2 với các tập tin từ dir1. Điều này sẽ trông giống như dir3:

dir3
âââ 1
â âââ tập tin1
âââ 2
â âââ tập tin1
âââ 5
â âââ tập tin1

Ở bước cuối cùng tôi sẽ sử dụng: rsync -a /source/directory --files-from=/full/path/to/listfile /destination/directory

Điểm:0
lá cờ cn

Khó khăn với những nhiệm vụ này thường là khi bạn cần khớp một thứ gì đó ở giữa đường dẫn, trong trường hợp này, có vẻ như bạn có thể khớp cấp độ thứ hai từ hai danh sách thư mục. Tôi cũng cho rằng bạn không có, ví dụ: dòng mới trong bất kỳ đường dẫn nào.

awk -F / -vOFS=/ -vf=2 'NR==FNR {a[$f]++; tiếp theo} $f trong {$1=""; in $0}' \
      <(printf %s\n dir2/*) dirs.txt | rsync -avx --files-from=- dir1/ dir3

Đặt dấu phân cách -F đến / về cơ bản làm cho lĩnh vực trong số các thành phần đường dẫn khác nhau, thành phần đường dẫn sau điểm khởi đầu sẽ trở thành trường thứ 2. Hành động mẫu đầu tiên NR==FNR {} đọc tệp đầu tiên vào mảng, là danh sách thư mục của dir2. Khi tập tin đầu tiên đến cuối, NR==FNR trở thành false và tệp thứ hai sẽ được xử lý bởi hành động mẫu tiếp theo. Trước khi in đường dẫn, điểm khởi đầu phải được xóa để tính đến nguồn/đích của rsync.

Điểm:0
lá cờ cn

sử dụng lệnh tìm thấy. Nó có thể được hướng dẫn bằng cách sử dụng -loại gắn cờ để chỉ tìm các thư mục và với -con đường cờ, chỉ tìm các mục phù hợp với một đường dẫn. Ví dụ,

tìm thấy . -đường dẫn './dir1/*' -type d

sẽ chỉ liệt kê tất cả các thư mục và thư mục con dưới dir1. Sau đó, bạn có thể chuyển hướng nó đến một dirs.txt tệp và chỉnh sửa tệp đó theo cách bạn muốn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.