Computer >> Máy Tính >  >> Lập trình >> Lập trình BASH

Sử dụng tập lệnh Bash hữu ích này khi ngắm sao

Chúng ta thường nói về việc Linux được sử dụng trên các máy chủ và các nhà phát triển, nhưng nó cũng được sử dụng trong nhiều lĩnh vực khác, bao gồm cả thiên văn học. Có rất nhiều công cụ thiên văn học có sẵn cho Linux, chẳng hạn như bản đồ bầu trời, biểu đồ sao và giao diện với hệ thống truyền động của kính thiên văn để điều khiển kính thiên văn của bạn. Nhưng một thách thức đối với các nhà thiên văn học là sử dụng máy tính trong khi mắt của họ làm việc trong bóng tối.

Khi làm việc ngoài đồng vào ban đêm, những người yêu thiên văn cần bảo vệ tầm nhìn ban đêm của mình. Có thể mất tới 30 phút để mắt người giãn ra hoàn toàn và điều chỉnh đến mức ánh sáng yếu và làm những việc như kiểm tra điện thoại hoặc máy tính xách tay ở mức độ sáng và màu thông thường có thể khiến mắt mất khả năng điều chỉnh. Điều này làm giảm khả năng nhìn trong bóng tối. Một ví dụ mà ai cũng có thể hiểu được:nếu bạn đang đọc cái gì đó trên điện thoại trên giường vào buổi tối và thức dậy đi vệ sinh, bạn sẽ biết khó khăn như thế nào khi nhìn thấy bất kỳ chướng ngại vật nào cản đường bạn.

Một giải pháp

Tôi muốn trình bày một kịch bản nhỏ tiện lợi để giúp các nhà thiên văn học trong gia đình bạn giữ "đôi mắt của họ" trong bóng tối. Nó dựa trên một tiện ích được gọi là xcalib, một "bộ tải hiệu chuẩn màn hình nhỏ cho X.org." Nó có thể được cài đặt dễ dàng bằng trình quản lý gói Linux của bạn.

Trên Fedora, ví dụ:

$ sudo dnf info xcalib
$ sudo dnf install xcalib

Hoặc Ubuntu:

$ sudo apt-get install xcalib

Ứng dụng xcalib chỉ hoạt động với X11, vì vậy nó không hoạt động trên hệ thống Wayland. Nhưng Wayland có chức năng này được tích hợp sẵn, vì vậy bạn có thể nhận được kết quả tương tự thông qua Cài đặt GNOME. Nếu bạn đang sử dụng X11, xcalib là một cách dễ dàng để thay đổi nhiệt độ màu của màn hình.

Tập lệnh

Tôi đã phát hiện ra Redscreen, một tập lệnh bộ lọc tầm nhìn ban đêm được viết bởi Jeff Jahr vào năm 2014. Tập lệnh ban đầu được viết cho trình bao C, nhưng Bash là mặc định phổ biến ngày nay. Trên thực tế, trình bao C không được cài đặt theo mặc định trên máy trạm Fedora Linux hiện tại của tôi. Vì vậy, tôi quyết định viết một phiên bản cập nhật của tập lệnh Redscreen nhắm vào cú pháp Bash mới nhất, nhưng tôi đã thực hiện một thay đổi lớn:sử dụng một câu lệnh viết hoa.

#!/usr/bin/bash
# redscreen.sh Fri Feb 28 11:36 EST 2020 Alan Formy-Duval
# Turn screen red - Useful to Astronomers
# Inspired by redscreen.csh created by Jeff Jahr 2014
# (https://www.jeffrika.com/~malakai/redscreen/index.html)

# This program is free software: you can redistribute it
# and/or modify it under the terms of the GNU General
# Public License as published by the Free Software Foundation,
# either version 3 of the License, or (at your option) any
# later version.

# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE.  See the GNU General Public License for
# more details.

# You should have received a copy of the GNU General Public
# License along with this program.  
# If not, see <https://www.gnu.org/licenses/>.

case $1 in
            on)
            # adjust color, gamma, brightness, contrast
            xcalib -green .1 0 1 -blue .1 0 1 -red 0.5 1 40 -alter
            exit 1
        ;;
        off)
                xcalib -clear
            exit 1
            ;;
        inv)
            # Invert screen
                xcalib -i -a
                    exit 1
        ;;
        dim)
            # Make the screen darker
                xcalib -clear
            xcalib -co 30 -alter
            exit 1      
        ;;
        *)
                echo "$0 [on | dim | inv | off]"
                    exit 1
        ;;
esac
Sử dụng tập lệnh Bash hữu ích này khi ngắm sao
Skychart dành cho Linux Phiên bản 4.2.1 trên máy trạm Fedora

Rất nhiều chương trình thiên văn học có chức năng "chế độ ban đêm", nhưng không phải tất cả đều có. Ngoài ra, tập lệnh này cung cấp một cách để ảnh hưởng đến toàn bộ màn hình, không chỉ một ứng dụng cụ thể. Điều này cho phép bạn sử dụng hệ thống Linux của mình ngoài thực địa vào ban đêm cho những việc khác ngoài việc ngắm sao — chẳng hạn như kiểm tra email hoặc đọc Opensource.com — mà không làm hỏng tầm nhìn ban đêm của bạn.

Cho dù bạn là một nhà thiên văn học hay chỉ là một nhà ngắm sao nghiệp dư, bạn có thể dành cả đêm để chiêm ngưỡng bầu trời bằng cách sử dụng Linux và mã nguồn mở!