Skip to main content

Posts

Showing posts from April, 2025

[TIL] Tạo alias trong fish shell với funcsave

Fish shell sử dụng cú pháp khác với các shell truyền thống như bash zsh whatis fish fish (1) - the friendly interactive shell Cấu hình Fish không đọc cấu hình từ file .profile hay .*rc mà cấu hình nằm trong thư mục ~/.config/fish $ find ~/.config/fish/ /home/me/.config/fish/ /home/me/.config/fish/conf.d /home/me/.config/fish/completions /home/me/.config/fish/fish_variables /home/me/.config/fish/functions /home/me/.config/fish/functions/sshaa.fish /home/me/.config/fish/functions/gtus.fish /home/me/.config/fish/functions/gco.fish /home/me/.config/fish/functions/gd.fish /home/me/.config/fish/functions/gpo.fish /home/me/.config/fish/config.fish alias là function alias is a simple wrapper for the function builtin, which creates a function wrapping a command. It has similar syntax to POSIX shell alias. For other uses, it is recommended to define a function. Để tạo 1 alias mới, viết alias la='ls -la' Để "save" alias này, gõ funcsave la sẽ tạo ra 1...

Tìm kiếm công cụ xử lý JSON, YAML xịn nhất: jq, yq, jmes... nushell

Ngành IT ngày nay ngập tràn JSON và YAML, 2 định dạng này ở khắp mọi nơi. Việc sử dụng các CLI tool truyền thống (ví dụ: grep) không hiệu quả khiến người dùng phải tìm kiếm những công cụ mới. Hàng trăm công cụ được sinh ra để truy cập/xử lý dữ liệu từ 1 JSON object, và cộng đồng khá ưa chuộng jq . Nhưng đây đã phải là lựa chọn tốt nhất để "xem và xử lý" JSON, YAML...? Thử các công cụ này để tìm ra giải pháp xịn nhất. JMESPath JMESPath không phổ biến khi xử lý JSON tùy ý, nhưng là cú pháp có sẵn khi dùng aws cli --query . JMESPath cũng có câu lệnh cli là jp https://github.com/jmespath/jp nhưng ít người biết. Cú pháp JMESPath https://jmespath.org/ trông hơi giống jq nhưng không phải, và tính năng cũng kém hơn: aws --region ap-southeast-1 lambda list-functions --query 'Functions[?LastModified > `2023-01-02`].[FunctionName,LastModified]' --output table ------------------------------------------------- | ListFunctions | +-------...

Tặng mã giảm giá khóa học online "Học kubernetes, helm, fluxcd trên máy với k3s"

  Tác giả FAMILUG mới public khóa học online Học kubernetes, helm, fluxcd trên máy với k3s trên Udemy Thân gửi tặng bạn đọc mã giảm giá FAMILUGK3S2504 Mã sẽ hết hạn ngày 15/5/2025.

[TIL] Libvirt QEMU://session has limited network funtions

https://wiki.libvirt.org/FAQ.html#what-is-the-difference-between-qemu-system-and-qemu-session-which-one-should-i-use What is the difference between qemu:///system and qemu:///session? Which one should I use? All 'system' URIs (be it qemu, lxc, uml, ...) connect to the libvirtd daemon running as root which is launched at system startup. Virtual machines created and run using 'system' are usually launched as root, unless configured otherwise (for example in /etc/libvirt/qemu.conf). All 'session' URIs launch a libvirtd instance as your local user, and all VMs are run with local user permissions. You will definitely want to use qemu:///system if your VMs are acting as servers. VM autostart on host boot only works for 'system', and the root libvirtd instance has necessary permissions to use proper networkings via bridges or virtual networks. qemu:///system is generally what tools like virt-manager default to. qemu:///session has a serious drawback: sin...

AWS SDK không tự chuyển tới S3 bucket khác region

AWS cloud hỗ trợ tới hơn 10 ngôn ngữ lập trình khác nhau với bộ SDK cho riêng từng ngôn ngữ. AWS SDK cho mỗi language có nhiều điểm khác nhau về các hoạt động có thể gây bất ngờ. Bài này bàn về sự khác biệt của Java SDK v2 so với Python SDK boto3 khi truy cập 1 bucket ở khác region. S3 là dịch vụ toàn cầu, nhưng dữ liệu nằm ở 1 region cố định S3 là dịch vụ toàn cầu, cụ thể là không tồn tại 2 bucket cùng tên, mỗi tên bucket là duy nhất. Thế nhưng dữ liệu S3 bucket thì lại nằm ở 1 region cụ thể khi nó được tạo. Nếu bucket tạo ở us-east-1 , dữ liệu sẽ nằm ở us-east-1 , khi code chạy ở region ap-southeast-1 , mặc định code sẽ truy cập tới bucket ở region ap-southeast-1 , và nhận được HTTP status code 301. Python Boto3 tự chuyển tới region khác Một ví dụ nhặt ở trên mạng: 2022-09-30 15:51:09,844 botocore.utils [DEBUG] S3 client configured for region us-east-1 but the bucket testbucket2ffd929fin is in region us-west-2; Please configure the proper region to avoid multiple unnecessary ...

[TIL] RFC cho định dạng CSV chỉ có 7 dòng

RFC mô tả các tài tiêu chuẩn kỹ thuật trên internet. RFC - Requests for Comments. They describe the Internet's technical foundations, such as addressing, routing, and transport technologies. RFCs also specify protocols like TLS 1.3, QUIC, and WebRTC that are used to deliver services used by billions of people every day, such as real-time collaboration, email, and the domain name system. https://www.ietf.org/process/rfcs/ RFC thường dài, chi tiết và khô khan khó đọc (như RFC cho HTTP1.1 https://www.rfc-editor.org/rfc/rfc2616 gần 180 pages), nhưng RFC cho CSV (không) ngạc nhiên ngắn gọn đơn giản trong 7 dòng: https://www.rfc-editor.org/rfc/rfc4180#section-2 1. Each record is located on a separate line, delimited by a line break (CRLF). For example: aaa,bbb,ccc CRLF zzz,yyy,xxx CRLF 2. The last record in the file may or may not have an ending line break. For example: aaa,bbb,ccc CRLF zzz,yyy,xxx 3. There maybe an option...

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG