$ 7z l ~ / ดาวน์โหลด /Tab
วิธีการทำให้รายการผลลัพธ์เรียงตามวันที่ไม่ใช่ตามชื่อ?
ขณะนี้ฉันใช้สคริปต์พิเศษเพื่อแสดงรายการ N ไฟล์ล่าสุดในไดเรกทอรีที่กำหนด (และคัดลอกชื่อไฟล์ด้วยตนเองลงในบรรทัดคำสั่ง) แต่ต้องการทำให้ราบรื่นและสะดวกยิ่งขึ้น
$ 7z l ~ / ดาวน์โหลด /Tab
วิธีการทำให้รายการผลลัพธ์เรียงตามวันที่ไม่ใช่ตามชื่อ?
ขณะนี้ฉันใช้สคริปต์พิเศษเพื่อแสดงรายการ N ไฟล์ล่าสุดในไดเรกทอรีที่กำหนด (และคัดลอกชื่อไฟล์ด้วยตนเองลงในบรรทัดคำสั่ง) แต่ต้องการทำให้ราบรื่นและสะดวกยิ่งขึ้น
คำตอบ:
ฉันไม่คิดว่าสามารถที่จะทำเช่นนั้นดังนั้นคุณอาจลองbash
zsh
ฉันไม่ใช่ผู้ใช้ zsh แต่ฉันคิดว่าการกำหนดค่านี้ควรใช้งานได้:
autoload -U compinit
compinit
zstyle ':completion:*' file-sort modification reverse
( reverse
ที่นี่เพื่อดูไฟล์ใหม่ล่าสุดในตอนท้ายของรายการเนื่องจากส่วนบนอาจไม่ปรากฏบนหน้าจอ)
บางครั้งฉันต้องการค้นหาไฟล์ที่ดาวน์โหลดล่าสุดในไดเรกทอรีดาวน์โหลด แต่อาจไม่ทราบชื่อไฟล์ที่แน่นอน นี่คือวิธีที่ฉันทำ
ls -rt ~/Downloads
ls -t
แสดงรายการไฟล์ตามเวลาที่ไม่ได้ตั้งชื่อโดยแสดงไฟล์ล่าสุดก่อน เนื่องจากไดเรกทอรีดาวน์โหลดของฉันมีไฟล์มากมายฉันไม่ต้องการเลื่อนไปด้านบนสุดของรายการเพื่อดูล่าสุด ls -rt
กลับลำดับของรายการโดยแสดงไฟล์ล่าสุดที่ด้านล่างของรายการ
คุณสามารถทำสิ่งที่คุณต้องการได้ง่ายๆ ตัวอย่างเช่น:
unzip $(ls -rt ~/Downloads | tail -n1)
หรือ
mv $(ls -rt ~/Downloads | tail -n1) *some_other_location*
คำถามเดิมของคุณสามารถทำได้ดังนี้
7z l $(ls -rt ~/Downloads | tail -n1)
ฉันรู้ว่านี่ไม่ได้เป็นไปตามวิธีการเสร็จสิ้นของแท็บ แต่อาจเหมาะกับความต้องการของคุณ
rl
กับls -lhtc "$@" | head -n $N
ทำนี้
ฉันจะทำตามขั้นตอนต่อไปนี้
1. First I will find the files and their timestamps 2. Sort them reversely 3. Take top N 4. Get the filenames 5. Zip it or do whatever u like
และสคริปต์มีลักษณะเช่นนี้ (อาจซับซ้อน)
find ~/Downloads/ -type f -printf '%TY-%Tm-%Td %TT %p\n' | sort -r | head -N | cut -d' ' -f3 | xargs 7z l
rl
(รายการล่าสุด) แต่ฉันต้องเรียกมันอย่างชัดเจนจากนั้นคัดลอกและวาง ฉันต้องการให้มีการรวมกับความสมบูรณ์ของแท็บมากขึ้น
ในทุบตีคุณสามารถปิดบางสิ่งบางอย่างโดยใช้ตัวอย่างเช่น
7z l ~/Downloads/
Alt+n
โดยที่bind
แมปAlt+nไปยังฟังก์ชันที่เขียนREADLINE_LINE
ตัวแปรอีกครั้ง
เพื่อประมาณความสมบูรณ์ของแท็บฉันทำสิ่งนี้ด้วยการวิเคราะห์อาร์กิวเมนต์ - perl-kludge และfzf
สำหรับการนำเสนอเมนู
https://github.com/WillForan/fuzzy_arg/blob/master/fuzzy_new_complete.bash