Questions tagged «scripts»

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


2
变量不解析为字符串
问题 我尝试以以下方式在bash脚本中提取wifi的信号电平(引号似乎没有什么区别): string="$(iwconfig wlan0 | grep -I Signal)" 如果我echo $string获得了我所期望的: Link Quality=63/70 Signal level=-47dBm 但是,如果我尝试获取子字符串echo ${string:5},它将返回相同的内容。 调试: 如果我将输出wconfig wlan0 | grep -I Signal直接粘贴到变量中:string="Link Quality=63/70 Signal level=-47dBm"则一切都会按预期进行。 echo $string # Link Quality=63/70 Signal level=-47dBm echo ${string:5} # Quality=63/70 Signal level=-47dBm 问题:根据互联网,所有bash变量都存储为字符串。因此,调试结果应该与我原来的问题相同。是否有某些原因在原始问题中未将其解析为文本?

4
同时在文件夹中同时运行Bash脚本
假设我.sh在一个文件夹(my_folder)中有五个Bash()脚本,它们的名称如下: script_1.sh script_2.sh script_3.sh script_4.sh script_5.sh 我该如何编写第六个Bash脚本或仅编写一个可以一起运行所有这些脚本的划线器? 我需要五个脚本同时开始一起运行,而不是一个接一个地运行。
10 bash  scripts 

2
引用文件名是否足以运行`xargs sudo rm -rf`?
我编写了一个脚本,该脚本删除了文件夹中除最后两个文件以外的所有文件: #!/bin/bash ls -1 --quoting-style=shell-always /path/to/some/folder \ | head -n -2 \ | xargs printf -- "'/path/to/some/folder/%s'\n" \ | xargs sudo rm -rf 该脚本将每天作为cron作业执行。 理由如下: 使用获取所有文件的列表ls -1(这样我每行得到一个文件); 使用head -n -2; 从列表中删除最后两个。 由于ls打印相对路径,因此请使用xargs printf事物在文件夹路径之前加上前缀,并使其成为绝对路径; 将其发送给sudo rm -rf使用xargs。 每个人都可以访问此文件夹,因此任何人都可以创建和删除此文件夹中的任何文件。 问题是: sudo rm -rf很恐怖。xargs sudo rm -rf非常可怕。 我想确保没有人会通过创建聪明的文件来删除(意外或故意删除)而损坏其他文件夹/系统。我不知道,像这样的聪明东西: file with / spaces.txt 这可能会导致超级恐怖sudo …

3
如何让脚本检测终端仿真器是否正在桌面会话中运行?
我运行的脚本会写出一个文本文件,然后在编辑器中将其打开。如果我在桌面会话中打开终端仿真器窗口并运行脚本,我希望编辑器是图形化的,例如gedit。但是,如果我通过手机或类似设备(无桌面会话)上的ConnectBot登录,则希望编辑器为nano。 目前,我必须维护2个不同的脚本,最后一步除外(或者运行图形脚本,然后关闭错误,然后在中手动打开文件nano)。从维护的角度来看,拥有两个几乎相同的脚本效率很低。 脚本可以检测到我处于哪种情况并打开正确的编辑器吗? (我已经找到了一种脚本来检测它是否在终端仿真器窗口中运行或通过双击来运行的方法,但是还没有找到一种方法来检测该窗口是否在桌面中运行...我不认为我了解Google的正确术语)

5
是否只有在脚本运行时才显示图标?
我对脚本非常陌生。这是我编写的简单脚本(有效),经过5分钟后显示一个图像: sleep 300 && firefox file:///home/tasks/fiveminutes.jpg 这是我的问题:有时我不记得是否启动了计时器。有没有一种方法可以添加文本或图标指示(理想情况下在任务栏上,但在任何地方都不错),显示时间为5分钟(从启动计时器到结束计时器)? 非常感谢您的任何建议。
10 bash  scripts 

3
是否可以拍摄圆形选定区域的屏幕截图?
当我们截取Ubuntu(使用Shift+ Prt Scr或Ctrl+ Shift+ Prt Scr)上选定区域的屏幕截图时,我们总是选择一个矩形区域。因此,我知道我可以在Inkscape之类的软件上编辑图像以使用矩形图像创建一个圆,但是我想知道是否可以更改配置以选择不同形状(主要是圆形) )直接在截屏时显示。 可能吗?

3
如何创建使用关键字和过滤内容的CLI Web Spider?
我想在已弃用的(过时的)文学论坛e-bane.net中找到我的文章。一些论坛模块被禁用,我无法获得其作者的文章列表。此外,搜索引擎未将该网站索引为Google,Yndex等。 查找我所有文章的唯一方法是打开网站的存档页面(图1)。然后,我必须选择特定的年份和月份-例如2013年1月(图1)。然后,我必须检查每篇文章(图2),开头是否写了我的昵称-pa4080(图3)。但是有几千篇文章。 我读过以下主题,但没有一种解决方案适合我的需求: 适用于Ubuntu的网络蜘蛛 如何在Linux系统上编写Web Spider 获取网站的网址列表 我将发布自己的解决方案。但是对我来说有趣的是: 还有没有更优雅的方式来解决此任务?


2
bash脚本:使用或不使用sudo调用时的结果不同
在Ubuntu 16.04.3中,我有一个非常简单的bash脚本: test.sh [[ 0 == 0 ]] && result="true" || result="false" echo $result echo $USER $SHELL $0 当我将其称为非root用户me或as时root,它将按预期工作。如果使用sudo ./test.sh,它将抱怨语法错误: $ ./test.sh true me /bin/bash ./test.sh $ sudo su # ./test.sh true root /bin/bash ./test.sh # exit $ sudo ./test.sh ./test.sh: 1: ./test.sh: [[: not found false root /bin/bash ./test.sh …
10 bash  scripts  sudo 




3
如何定期关闭显示隐藏文件?
因此,为了将某些文件和文件夹隐藏在不熟练的人眼中,我修改了它们的名称,并在名称的开头加了一个点。它有效,并且文件被隐藏。不熟练的爱管闲事的人不会看到他们。使用Nautilus,我可以使用组合键Ctrl- 打开和关闭“显示隐藏文件” H。精细。但是后来我不知道是否要启用或禁用该功能。 我想编写一个bash脚本,该脚本每隔10分钟自动启动一次,并将关闭“显示隐藏文件”功能。因此,我可以确定,爱管闲事的眼睛永远不会看到隐藏的文件。现在的问题是: 我不知道要使用什么bash指令(如果有)。我非常确定bash脚本几乎可以完成所有操作,所以请帮忙! 我不知道如何每隔xx秒或每分钟自动启动bash脚本。 我该怎么做?
10 bash  scripts  files  schedule 

5
如何使用Shell脚本在gnuplot中执行命令?
我要做的是编写一个脚本,该脚本首先启动一个程序,然后告诉它执行一堆命令,然后退出。让我们举一个例子。 我写了这个脚本myscript.sh,它不能按我想要的方式工作。它只是在运行gnuplot并等待其退出,然后运行其他命令。显然会产生错误。 #!/bin/bash gnuplot plot sin(x) pause -1 quit 我想很清楚我要做什么。如果没有,请在评论中让我知道。

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.