Àç´ÉiN ¿ù°£ÃÖ´Ù Àç´É±âºÎ ȸ¿ø

  • rankÇÊ³ó±º Ã¤ÅÃÀç´É¼ö (8)
  • rank¿©Àڿ;ÆÀ̴³öÁà äÅÃÀç´É¼ö (2)
  • rankBMOooooo äÅÃÀç´É¼ö (1)
    [°³¹ß/ÇÁ·Î±×·¥]

    ÆÄÀ̽ã ÄÚµù µµ¿ò Á» ºÎŹµå¸³´Ï´Ù.

    rank kkhyoy 2023-09-07 (¸ñ) 15:48 Á¶È¸ : 464


    ¾È³çÇϼ¼¿ä. ¸ð´ÏÅ͸µ ±â´É¿¡ ÅÚ·¹±×·¥ ¸Þ¼¼Áö Àü¼Û ÄÚµùÀÌ ÇÊ¿äÇѵ¥ ¾Æ¹«¸® Çصµ ¾ÈµÇ¼­ ¿äû µå·Áº¾´Ï´Ù.


    Á¦°¡ ÇÊ¿äÇÑ°Ç ½Ç½Ã°£ ³»¿ëÀÌ Ãß°¡µÇ´Â .log ÆÄÀÏÀ» ºÒ·¯¿Í¼­ ¸ð´ÏÅ͸µ ÇÏ´Ù°¡ Á¦°¡ ÀÔ·ÂÇÑ °ª°ú µ¿ÀÏÇÑ °ªÀÌ È®ÀεǸé

    ÅÚ·¹±×·¥À¸·Î ¸Þ¼¼Áö ¹ß¼ÛÇÏ´Â ÄÚµùÀÔ´Ï´Ù.



    [09:23:11.643]|[276c]|[Info]|upgrade package [name = AAAAA ]

    [09:26:34.817]|[0548]|[Info]|fetch_package_version taskid=1, package_id= 12345 , version=275

    [09:26:36.381]|[21ac]|[Warning]|compel audit, a dd bytes:105998271 ,update size bounder:1024,

    [09:26:49.758]|[17fc]|[Trace]|package [id = 10072][ip = ][name = kr_ssn_05] upload finis h


    [09:38:26.011]|[276c]|[Info]|upgrade package [name = BBBBB ]

    [09:41:03.612]|[0548]|[Info]|fetch_package_version taskid=2, package_id= 23451 , version=546

    [09:51:47.567]|[17fc]|[Warning]|compel audit, add bytes:87441026 ,update size bounder:1024,

    [09:51:59.360]|[17fc]|[Trace]|package [id = 11032][ip = ][name = kr_ssn_4] upload finish


    [10:18:46.258]|[276c]|[Info]|upgrade package [name = CCCCC ]

    [10:28:03.983]|[0548]|[Info]|fetch_package_version taskid=4, package_id= 34512 , version=342

    [10:28:08.020]|[17fc]|[Warning]|compel audit, add bytes:58359874318 ,update size bounder:1024,

    [11:09:05.353]|[21ac]|[Trace]|package [id = 10097][ip = ][name = kr_ssn_4] upload finish


    ·Î±× ÆÄÀÏÀÇ ³»¿ëÀÌ°í Á¦°¡ ¼öµ¿À¸·Î AAAAA À̸§À» Ãß°¡Çسõ°í ¸ð´ÏÅ͸µÁß AAAAA À̸§À» È®ÀÎÇϸé 

    °°Àº ¶óÀο¡ ½Ã°£À» Æ÷ÇÔÇÏ¿© ÅÚ·¹±×·¥À¸·Î


    09:23:11

    °ÔÀÓ¸í : AAAAA

    ¾÷µ¥ÀÌÆ® ÁøÇà


    ¸Þ¼¼Áö¸¦ 1Â÷ ¹ß¼Û ÇÕ´Ï´Ù.


    ±×¸®°í 

    upload finis h ¸¦ È®ÀεǸé 

    1.a dd bytes:105998271 ¿ë·®À» 999MB ±îÁö¸¸  MB·Î ÀÌ»óÀÏ °æ¿ì GB·Î ȯ»ê

    2. package_id= 12345 ID¹øÈ£

    3. upload finis ¶óÀÎ ½Ã°£ È®ÀÎ

     -  [name =  AAAAA ]   ¿Í  [name =  BBBBB ]   »çÀÌ¿¡´Â upload finish ¶óÀÎÀÌ 2°³ ÀÔ´Ï´Ù. ¸¶Áö¸· ¶óÀθ¸ Âü°íÇÕ´Ï´Ù.


    09:26:49

    °ÔÀÓ¸í : AAAAA

    °ÔÀÓ ¾ÆÀ̵ð : 12345

    ¿ë·® : 999MB

    ¾÷µ¥ÀÌÆ® ¿Ï·á


    ÀÌ·¸°Ô ¹«ÇÑ·çÇÁ·Î °è¼Ó ¸ð´ÏÅ͸µ ÇÒ ¼ö ÀÖ´Â ÄÚµù ¿äûµå¸³´Ï´Ù.


    À©µµ¿ì ¹Ú½º ÄÚµùÀε¥ Ȥ½Ã °£¼ÒÈ­ Çؼ­ À§ ³»¿ë Àû¿ë °¡´ÉÇÒ±î¿ä??


    import tkinter as tk

    from tkinter import filedialog

    import os



    class FileMonitorApp:

        def __init__(self, root):

            self.root = root

            self.root.title("ÆÄÀÏ ¸ð´ÏÅ͸µ ¾Û")


            self.root.geometry("350x450")  # À©µµ¿ì Å©±â¸¦ 500x600À¸·Î ¼³Á¤


            self.folder_path = ""

            self.package_ids = []

            self.file_watcher = None


            self.create_ui()


        def create_ui(self):

            # ÆÄÀÏ ¼±Åà ¹öÆ°

            file_select_button = tk.Button(self.root, text="ÆÄÀÏ ¼±ÅÃ", command=self.select_file)

            file_select_button.pack()


            # ÆÄÀÏ °æ·Î ·¹À̺í

            self.file_path_label = tk.Label(self.root, text="")

            self.file_path_label.pack()


            # ´Ù¼¸ ÀÚ¸® ¼ýÀÚ ÀÔ·Â Çʵå

            self.package_id_entry = tk.Entry(self.root)

            self.package_id_entry.pack()


            # Package ID Ãß°¡ ¹öÆ°

            add_package_id_button = tk.Button(self.root, text="Package ID Ãß°¡", command=self.add_package_id)

            add_package_id_button.pack()


            # Package ID ¸ñ·Ï ·¹À̺í

            self.package_id_list_label = tk.Label(self.root, text="Package ID ¸ñ·Ï:")

            self.package_id_list_label.pack()


            # Package ID ¸ñ·Ï Listbox

            self.package_id_listbox = tk.Listbox(self.root, selectmode=tk.MULTIPLE)

            self.package_id_listbox.pack()


            # Package ID »èÁ¦ ¹öÆ°

            remove_package_id_button = tk.Button(self.root, text="Package ID »èÁ¦", command=self.remove_package_id)

            remove_package_id_button.pack()


            # Package ID Ãâ·Â ·¹À̺í

            self.package_id_label = tk.Label(self.root, text="")

            self.package_id_label.pack()


            # ¸ð´ÏÅ͸µ ½ÃÀÛ ¹öÆ°

            start_monitor_button = tk.Button(self.root, text="¸ð´ÏÅ͸µ ½ÃÀÛ", command=self.start_monitoring)

            start_monitor_button.pack()


            # ¸ð´ÏÅ͸µ ÁßÁö ¹öÆ°

            stop_monitor_button = tk.Button(self.root, text="¸ð´ÏÅ͸µ ÁßÁö", command=self.stop_monitoring)

            stop_monitor_button.pack()


        def select_file(self):

            self.file_path = filedialog.askopenfilename()

            self.file_path_label.config(text=f"¼±ÅÃÇÑ ÆÄÀÏ: {self.file_path}")


        def add_package_id(self):

            package_id = self.package_id_entry.get()

            if len(package_id) == 5:

                self.package_ids.append(package_id)

                self.update_package_id_listbox()

            else:

                print("´Ù¼¸ ÀÚ¸® ¼ýÀÚ¸¦ ÀÔ·ÂÇϼ¼¿ä.")


        def remove_package_id(self):

            selected_indices = self.package_id_listbox.curselection()

            for index in reversed(selected_indices):

                self.package_ids.pop(index)

            self.update_package_id_listbox()


        def update_package_id_listbox(self):

            self.package_id_listbox.delete(0, tk.END)

            for package_id in self.package_ids:

                self.package_id_listbox.insert(tk.END, package_id)


        def start_monitoring(self):

            if self.file_path:

                self.file_watcher = FileWatcher(self.file_path, self.handle_file_created)

                self.file_watcher.start()

            else:

                print("ÆÄÀÏÀ» ¼±ÅÃÇϼ¼¿ä.")


        def stop_monitoring(self):

            if self.file_watcher:

                self.file_watcher.stop()

                self.file_watcher = None

            else:

                print("¸ð´ÏÅ͸µÀÌ ÀÌ¹Ì ÁßÁöµÇ¾ú½À´Ï´Ù.")


        def handle_file_created(self, filepath):

            # ÆÄÀÏÀÌ »ý¼ºµÇ¾úÀ» ¶§ ½ÇÇàÇÒ ÀÛ¾÷À» ¿©±â¿¡ Ãß°¡Çϼ¼¿ä.

            if any(package_id in filepath for package_id in self.package_ids):

                print(f"»õ ÆÄÀÏÀÌ »ý¼ºµÇ¾ú½À´Ï´Ù: {filepath}")

                self.package_id_label.config(text=f"Package ID: {', '.join(self.package_ids)}")



    class FileWatcher:

        def __init__(self, file_path, callback):

            self.file_path = file_path

            self.callback = callback

            self.running = False


        def start(self):

            self.running = True

            while self.running:

                if os.path.exists(self.file_path):

                    self.callback(self.file_path)


        def stop(self):

            self.running = False



    if __name__ == "__main__":

        root = tk.Tk()

        app = FileMonitorApp(root)

        root.mainloop()



    ¿äûÀÚ°¡ ÀÚ½ÅÀÇ 10000Æ÷ÀÎÆ®¸¦ °É¾ú½À´Ï´Ù. ¿äûÀÌ Ã¤ÅõǸé 5000Æ÷ÀÎÆ®¸¦ µå¸³´Ï´Ù.
    ´ñ±Û 0°³ ´ñ±Û¾²±â

    ¹øÈ£ Àç´ÉºÐ·ù Á¦¸ñ ±Û¾´ÀÌ »óÅ Æ÷ÀÎÆ® ³¯Â¥ Á¶È¸
    °Ë»öµÈ °Ô½Ã¹°ÀÌ ¾ø½À´Ï´Ù.
    °Ë»öÀº 2õ°Ç ´ÜÀ§·Î ²÷¾î¼­ °Ë»öµÇ¿À´Ï
    °è¼ÓÇؼ­ °Ë»öÀ» ¿øÇÏ½Ã¸é ¾Æ·¡ ´ÙÀ½°Ë»ö ¹öÆ°À» ´­·¯ÁÖ¼¼¿ä.

    °øÀ¯Çϱâ

    ÀÌÅä·£µå ·Î°í

    °èÁ¤ ã±â ȸ¿ø°¡ÀÔ
    ¼Ò¼È·Î±×ÀÎ