使用 Yandex.Weather API,我收到带有请求的天气预报,并收到 JSON 作为响应。我取出所需键的值,即condition
. 密钥的值是用英语告诉我的,但我需要用俄语给出。该文档对值进行了解码:
实际上问题本身:如何组织传入值与解密的比较(有一个想法将其放入字典中)以及随后用俄语值替换?
有这么一个简单的脚本,按照时间间隔改变主题:
#!/bin/bash
HOUR=$(date +%H)
if [ "$HOUR" -ge "19" ] || [ "$HOUR" -lt "7" ]
then
gsettings set org.gnome.desktop.interface gtk-theme "Numix-Dark"
gsettings set org.gnome.shell.extensions.user-theme name "Numix-Dark"
else
gsettings set org.gnome.desktop.interface gtk-theme "Numix"
gsettings set org.gnome.shell.extensions.user-theme name "Numix"
fi
在 cron 中,我每 10 分钟调用一次:
# m h dom mon dow command
*/10 * * * * bash /home/hackerman/toogle-mode.sh
cron 已启动并正在运行(我通过systemctl
实验对其进行了检查),但脚本由于某种原因无法正常工作(cat /var/log/syslog | grep "cron"
输出中没有错误)。但是,从终端句柄开始,脚本就完成了。
可能是什么原因?
有一个带有 Debian 的 Samba 服务器。该功能通过标准方式启用,空闲 20 分钟后进入睡眠模式。
问题是这样的:我连接,开始看电影,20 分钟后。空闲计时器被触发。
是否可以以某种方式配置(某处),以便如果从磁盘读取负载(或其他适合我的情况的参数),则关闭不活动计时器。好吧,电影结束后,它又重新打开了。
简单地关闭计时器就是这样的解决方案,因为你必须去服务器并让它进入睡眠状态,并且你不希望它整夜闲置。
下午好。我的意思是我以某种方式进入访问日志并看到了这个(IP地址被IP替换以防万一)
IP - - [13/Jun/2020:06:31:20 +1000] "GET login.cgi HTTP/1.1" 400 0 "-" "-"
IP - - [13/Jun/2020:07:24:27 +1000] "GET / HTTP/1.1" 200 928 "-" "Mozilla/5.0 zgrab/0.x"
IP - - [13/Jun/2020:07:50:00 +1000] "GET login.cgi HTTP/1.1" 400 0 "-" "-"
IP - - [13/Jun/2020:08:23:34 +1000] "GET / HTTP/1.1" 200 1294 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
IP - - [13/Jun/2020:09:19:32 +1000] "GET / HTTP/1.1" 400 0 "-" "-"
IP - - [13/Jun/2020:10:14:42 +1000] "GET login.cgi HTTP/1.1" 400 0 "-" "-"
IP - - [13/Jun/2020:13:09:41 +1000] "GET / HTTP/1.1" 200 1294 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
IP - - [13/Jun/2020:13:33:19 +1000] "GET / HTTP/1.1" 400 0 "-" "-"
我不知道 IP(我查看了服务,它们似乎是外国的),我不使用 CGI(服务器上只有几个 html 页面)。
会是什么呢?
我的观点是,这是一个涉足扫描登录漏洞的人,但我不确定,我想听听专家的回答(嗯,或者比我更高级)。
提前致谢。
下午好。上有一个/etc/profile.d/
脚本bash
,按计划在通过 SSH 连接时显示各种信息。
但是,重新启动机器后,通过图形 shell 登录变得根本不可能(Gnome 环境):我选择用户,输入密码,然后返回用户选择的窗口。同时,通过 SSH 连接时,脚本在终端中运行也没有问题。
从那里删除脚本后,通过图形 shell 登录就可以了。
如何解决这个问题?
UPD。脚本
#!/bin/bash
# Font furniture
b=$(tput bold);
n=$(tput sgr0);
# Functions
func_PrintResourceUsage() {
if [ -z "$3" ]; then
echo -e "\t${n}$1\t\t${b}$2${n}";
else
echo -e "\t${n}$1\t\t${b}$2${n}\tof \t${b}$3";
fi;
}
echo -e;
# CPU info
loadavg=$(cat /proc/loadavg);
echo -e "${LinesPrefix}${b}CPU usage:";
func_PrintResourceUsage " 1 min" $(echo $loadavg | awk '{ print $1 }') "";
func_PrintResourceUsage " 5 min" $(echo $loadavg | awk '{ print $2 }') "";
func_PrintResourceUsage "10 min" $(echo $loadavg | awk '{ print $3 }') "";
echo -e;
# RAM info
RAMTotal=$(free -h | awk 'FNR == 2 { print $2 }');
RAMUsed=$(free -h | awk 'FNR == 2 { print $3 }');
SWAPTotal=$(free -h | awk 'FNR == 3 { print $2 }');
SWAPUsed=$(free -h | awk 'FNR == 3 { print $3 }');
echo -e "${LinesPrefix}${b}Memory usage:"
func_PrintResourceUsage "RAM" ${RAMUsed} ${RAMTotal};
func_PrintResourceUsage "SWAP" ${SWAPUsed} ${SWAPTotal};
echo -e;
# Disc space info
MountArr[0]="/";
echo -e "${LinesPrefix}${b}Disc usage:";
for Mount in "${MountArr[@]}"; do
MountPointInfo=$(/bin/df -Th $Mount 2>/dev/null | tail -n 1);
MountPointFreeSpace=( \
$(echo $MountPointInfo | awk '{ print $4 }') \
$(echo $MountPointInfo | awk '{ print $3 }') \
);
func_PrintResourceUsage $Mount ${MountPointFreeSpace[0]} ${MountPointFreeSpace[1]};
done
echo -e;
#users
UsersOnlineCount=$(users | wc -w);
echo -ne "${LinesPrefix}${b}Users logged in:"
echo -e " ${b}${UsersOnlineCount}";
echo -e;
# uptime
SystemUptime=$(uptime | sed 's/.*up \([^,]*\), .*/\1/');
echo -ne "${LinesPrefix}${b}System uptime:"
echo -e "\t${b}${SystemUptime}";
echo -e;
有几种形式,它们有一个输入元素。我像这样抓住他们的身份:
var form_id = $('input[name="btn_onoff"]').attr('id');
试图改变这样的价值
document.querySelector('#' + form_id).innerHTML = "Ожидание..";
什么都没有出来:(
ID 是唯一的。
这种现象的原因可能是什么?