Điểm:0

Làm cách nào để in các tệp trong một thư mục có chỉ mục số trước chúng?

lá cờ in

Tôi muốn in tất cả các tệp trong một thư mục có đánh số để mỗi tệp có một số trước nó, như sau:

  1. myfile.txt
  2. tập tin khác
  3. vân vân

Sau đó, tôi muốn tham khảo các tệp này sau này, như thế này:

thư mục mv 1 2 3

Làm cách nào tôi có thể tham khảo các tệp theo thứ tự số?

Điểm:0
lá cờ hr

Bạn có thể đặt tên tệp trong một mảng được lập chỉ mục và sử dụng các chỉ mục mảng, ví dụ.

shopt -s nullglob
tập tin =( * )

cho tôi trong ${!files[@]}; làm 
  printf '%d. %s\n' $i "${files[i]}"
xong

Để tham khảo một tập tin thông qua chỉ mục của nó N, sử dụng "${tệp[n]}", ở đâu N được đánh giá là một biểu thức số, ví dụ. "${tệp[3]}" hoặc n=3; tiếng vang "${files[n]}". Lưu ý rằng các chỉ số mảng trong bash bắt đầu từ 0.

lá cờ in
làm gì ! và @ làm, ở trên?
lá cờ hr
@PeterElbert `${files[@]}` mở rộng thành danh sách các giá trị mảng; trong khi `${!files[@]}` mở rộng thành danh sách các chỉ số của mảng (hoặc khóa, trong trường hợp là mảng kết hợp). Xem phần phụ `Mảng` trong phần `PARAMETERS` của `man bash`.
lá cờ in
Cảm ơn. Tôi có thể chuyển nhiều chỉ mục vào danh sách tệp đó không? Tôi muốn di chuyển nhiều tệp một cách thuận tiện, chẳng hạn như thư mục mv â${files[1, 2, 4:10, 22]}â. Hoặc nhập shell trực tiếp nơi tôi có thể chỉ cần nhập â$ 1 2 4-10 directoryâ mà không cần nhập âfilesâ.
lá cờ hr
@PeterElbert bạn cần phải viết một lệnh di chuyển tùy chỉnh (hàm shell) để ánh xạ các đối số của nó trở lại tên tệp mà tôi nghĩ (không có cách nào để shell - hoặc mv - biết rằng `1`, `2` và `4- 10` không phải là tên tệp)

Đă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.