ด้วยเทอร์มินัล: ทำให้หิมะตกบนคอนโซลของคุณ

น่าสนใจและสนุกสนาน ต้นฉบับ ที่ฉันพบใน ParadiseLinux ซึ่งทำให้เกล็ดหิมะตกลงบนคอนโซลของเราอย่างไม่มีกำหนด

รหัสที่เป็นปัญหาคือ:

[รหัส]

#! / bin / ทุบตี

LINES = $ (เส้น tput)
COLUMNS = $ (tput cols)

ประกาศ -A เกล็ดหิมะ
ประกาศ -A lastflakes

ชัดเจน

function move_flake () {
ผม = » $ 1″

ถ้า ["$ {เกล็ดหิมะ [$ i]}" = ""] || ["$ {เกล็ดหิมะ [$ i]}" = "$ LINES"]; แล้ว
เกล็ดหิมะ [$ i] = 0
อื่น
ถ้า ["$ {lastflakes [$ i]}"! = ""]; แล้ว
printf "\ 033 [% s;% sH \ 033 [1; 1H" $ {lastflakes [$ i]} $ i
fi
fi

printf "\ 033 [% s;% sH❄ \ 033 [1; 1H" $ {เกล็ดหิมะ [$ i]} $ i

lastflakes [$ i] = $ {เกล็ดหิมะ [$ i]}
เกล็ดหิมะ [$ i] = $ (($ {เกล็ดหิมะ [$ i]} + 1))
}

ในขณะที่:
do
ผม = $ (($ RANDOM% $ COLUMNS))

move_flake $ i

สำหรับ x ใน "$ {! lastflakes [@]}"
do
move_flake "$ x"
ทำ

นอนหลับ 0.1
ทำ

[/รหัส]

เราบันทึกไว้ในไฟล์และตั้งชื่ออะไรก็ได้สมมติว่า snowing.sh. จากนั้นเราให้สิทธิ์ในการดำเนินการ:

$ chmod +x nevando.sh

และเราดำเนินการในเทอร์มินัล

$ ./nevando.sh

ยังคงเป็นเพียงการใส่คริสต์มาสบางส่วนไว้ในพื้นหลัง😛


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   ความกล้าหาญ dijo

    ช้าไปหน่อย แต่เดี๋ยวก่อน

    1.    คาร์ลอส-เอ็กซ์เอฟซี dijo

      สายเล็กน้อยสำหรับผู้ที่มาจากซีกโลกเหนือ แต่ก็เร็วไปหน่อยสำหรับผู้ที่มาจากซีกโลกใต้