Questions tagged «scripts»

脚本是写在“纯文本”文件中的一系列指令。脚本解释器(例如Bash或其他Shell,Python,Perl,Ruby等)读取文件并执行指令,就像在命令提示符下输入了指令一样。

6
计算文件中每一列的总和
在具有以空格''分隔的不同列数的文件中,如何计算列之和。一个例子将表明需要: File A: 1 2 2 3 4 5 6 1 1 1 5 那么输出将是: 对于列1(1 + 2 + 4 + 1)= 8 第2列为11 第3列是7 第4列是5

2
Awk让我所有的普通用户陷入困境
我有一个剧本。 我想从/etc/shadow阴影文件第二个词以$或开头的所有用户中获取所有常规用户!$。 我的模式是 sudo getent shadow | awk -F: '$2 ~ /^$/ || /^!$/ {print $1}' 目前不起作用。
8 bash  scripts 


3
Shell脚本跳过PPA(如果已安装)
我想创建一个脚本来添加新的PPA或跳过(如果已安装)。 有人将此解决方案发布到另一个问题: #!/bin/bash add_ppa() { for i in "$@"; do grep -h "^deb.*$i" /etc/apt/sources.list.d/* > /dev/null 2>&1 if [ $? -ne 0 ] then echo "Adding ppa:$i" sudo add-apt-repository -y ppa:$i else echo "ppa:$i already exists" fi done } shell脚本有条件地添加apt存储库 就我而言,我想添加ppa:otto-kesselgulasch/gimp-edge,但是我不确定应该在脚本的哪个位置添加它。 我尝试过,add_ppa(ppa:otto-kesselgulasch/gimp-edge)但是我总是收到错误提示(这ppa是我的脚本的名称): ppa: 1: ppa: Syntax error: word unexpected (expecting …
8 bash  scripts  ppa 

1
外部调用脚本不起作用
我使用一个简单的脚本从.mp4文件创建.mp3: #!/bin/bash for i in *.mp4 do ffmpeg -i "$i" -ab 128k "${i%mp4}mp3" done 从桌面运行或通过终端调用时,脚本运行良好。但是,从外部脚本调用该脚本时,该脚本无法运行,返回 “ * .mp4:无此类文件或目录”。 我怀疑问题出在外壳扩展上,但无法解决这种情况。
8 bash  scripts 

7
Bash脚本-如何连接以下字符串?
这是在Linux(Ubuntu / Fedora)中bash执行cpuid发现的脚本部分: /usr/bin/cpuid > id.txt CPUID=id.txt echo `grep "extended model" $CPUID` | sed 's/0x//' | awk ' { print $4 } ' > cpu.txt a=`cat cpu.txt` echo `grep "extended family" $CPUID`| sed 's/0x//' | awk ' { print $4 } ' > cpu.txt a+=`cat cpu.txt` 因此,对于我的笔记本电脑,脚本的这一部分(如下所示)为60。 现在如何仅使用局部变量而不cpu.txt涉及中间文件()来执行此操作?

3
我是否可以像祖父钟一样在头几个小时使用cron发出铃声?
我迷失在askubuntu中,阅读问答,并尝试使用推荐的代码片段。因此,我经常会错过每小时一刻在互联网上切换电视新闻频道的机会。对于允许时移的youtube频道来说,这不是一个大问题,但是对于使用Flash Player的电视频道来说,这是一个“节目停止器”。 可以cron配置为在每小时的最高时间运行一项工作,我提供一个脚本来听起来像时钟的钟声(当然,音量很小!)?一小时的钟声也可能会响起。我确定我可以在网上找到合适的文件.ogg或.oga文件,并且知道可以ogg123用来播放它们。我只是不知道是否cron可以做到。我知道我可以使用可以睡眠和唤醒以测试时间的脚本,但是不喜欢一直运行某些东西的想法(我认为已经足够进行这些事情了)。 如果可以做到这一点,那么cron有人可以回答如何设置吗? 谢谢。
8 sound  scripts  cron 

5
每三天执行一次Bash脚本
我想每3天执行一次Shell脚本。结合使用crontab并01 00 */3 * *不能真正满足条件,因为它将在每月31日运行,然后在一个月的第一天再次运行。该*/3语法是相同的话说,1,4,7 ...... 25,28,31。 应该有办法使脚本本身检查条件,如果还没有3天,则退出。因此crontab每天都会执行该脚本,但是脚本本身会检查是否已经过去了3天。 我什至找到了一些代码,但是它给了我语法错误,任何帮助将不胜感激。 if (! (date("z") % 3)) { exit; } main.sh: line 1: syntax error near unexpected token `"z"' main.sh: line 1: `if (! (date("z") % 3)) {'


1
cron是否唤醒我的计算机?
我每天需要在午夜启动一个Python脚本,在互联网上进行一些搜索后,我发现可以使用cron进行此操作。我很好奇的是,如果我将一项cron任务安排在午夜,它将唤醒我的计算机来完成这项工作吗?还是我必须使用其他方式唤醒计算机?我正在使用Ubuntu 16.04。


3
Bash脚本将文件拖放到新位置
我敢肯定,我会把这个问题交给我,但是我似乎无法弄清楚。我是bash脚本的新手,所以对我轻松一点... 我希望能够将文件拖放到桌面应用程序上,然后再调用bash脚本,它将该文件移动到bash脚本内指定的位置。到目前为止,这是什么。 Bash脚本 #! /bin/bash mv $file /path/to/new/directory 但是,$file当我将变量拖放到桌面应用程序上时,我不知道如何将其作为变量输入。我怎样才能做到这一点? 原因:我有一些文件需要在一个文件夹中阅读,一旦阅读它们,便将它们放入另一个文件夹中。我基本上只是想简化它。 谢谢保罗

4
在执行脚本之前要求用户确认?
当我执行脚本(通过双击)时,是否有一种获取用户确认(如您确定/是/否)类型对话框的方法?我的意思不是在Terminal中,而是一个图形确认框,如下所示: (我知道映像来自Windows,找不到Linux)
8 scripts 

5
Bash-根据部分文件名列表检查目录中的文件
我有一台服务器,每天每个客户端将一个文件接收到目录中。文件名的构造如下: uuid_datestring_other-data 例如: d6f60016-0011-49c4-8fca-e2b3496ad5a7_20160204_023-ERROR uuid 是标准格式的uuid。 datestring是的输出date +%Y%m%d。 other-data 长度可变,但绝不包含下划线。 我有一个格式的文件: # d6f60016-0011-49c4-8fca-e2b3496ad5a7 client1 d5873483-5b98-4895-ab09-9891d80a13da client2 be0ed6a6-e73a-4f33-b755-47226ff22401 another_client ... 我需要使用bash检查文件中列出的每个uuid在目录中是否都有相应的文件。 我已经走了很远,但是感觉到我通过使用if语句走错了方向,并且我需要遍历源目录中的文件。 source_directory和uuid_list变量已在脚本的前面分配: # Check the entries in the file list while read -r uuid name; do # Ignore comment lines [[ $uuid = \#* ]] && continue if [[ -f …

2
Shell脚本禁止IP
一些IP正在打开服务器的数千个连接。我有一个Ubuntu 14服务器。我使用以下命令检查总连接数: netstat -an | grep tcp | awk'{print $ 5}'| 切-f 1 -d:| 排序| uniq -c | 排序-n 然后,我使用以下iptables规则来阻止罪魁祸首IP。 iptables -I输入1 -s xxxx -j DROP 一切正常,并阻止IP地址。但是,我无法24/7全天候在线监视服务器。我想知道是否可以使用任何Shell脚本来自动执行?例如,如果IP随时打开的连接数超过X,则上述iptables规则应自动禁止该IP。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.