Tag: 脚本

常用脚本的非sudo替代/ usr / local / bin

我习惯将常用脚本放在/usr/local/bin这样我就可以在终端的任何地方执行它们。 例如,我创建一个名为1的shell脚本,使用chmod +x 1将其设置为可执行文件并将其放在/usr/local/bin ,在脚本中我在第一行输入#!/bin/sh ,然后我的命令。 从那以后,通过打字可以非常方便地使用并快速执行 1 Enter 在终端上,从任何文件夹里面。 我的问题是,我目前正在一台无法做sudo的计算机上工作,我也不能指望得到它,所以我不能将我的脚本放在/usr/local/bin 。 我有什么选择? 是否有另一条路径具有相同的“从任何地方运行”function,我可以在没有sudo情况下访问,或者以其他方式实现相同的function? 这篇文章接受的答案是 对于用户范围的脚本,请在主目录中使用bin /。 我尝试了,但我的主目录中没有bin文件夹,当我创建一个文件夹时,我仍然无法从其他任何地方运行该脚本。 我正在使用Ubuntu 12.04 LTS。

在linux脚本中使用“while read …”

有人可以解释下面的代码如何工作? echo ‘1 2 3 4 5 6’ | while read abc do echo $c $b $a done 具体来说,我想知道为什么这个循环的输出是3 4 5 6 2 1 ,而不是3 2 1和6 5 4在两条独立的线上? 我好像无法绕过它…

如何使脚本在单独的文件中记录它执行的次数?

我需要编写一个脚本来写一个文件这个脚本执行了多少次。 我怎样才能做到这一点?

在系统启动时启动脚本(Ubuntu 16.04.1)

在我的新Ubuntu系统上,我尝试在系统启动时自动启动Bash脚本。 我发现了很多post和方法。 所以我试图通过Crontab来实现它: 运行crontab -e 添加@reboot /cronjobs/demo.sh >> /cronjobs/cronLogs/demo.output 使用sudo chmod +x /cronjobs/demo.sh将执行权限设置为脚本 重启系统 输出已创建,但脚本将不会执行。 所以我用rc.local文件尝试了另一个解决方案: 运行sudo vi /etc/rc.local 添加/cronjobs/demo.sh || exit 1 /cronjobs/demo.sh || exit 1 重启系统 但是我的脚本没有运行。 所以我读到重启时脚本必须在/etc/rc0.d/ 。 所以我尝试了这个: 使用mv /cronjobs/demo.sh /etc/rc0.d/K99_demo.sh移动脚本 检查权限(一切似乎都可以) 重启系统 同样的事情 – 脚本不会被执行。 那么,我的错误是什么? 为什么我的脚本无法执行? 如果我在使用cd /cronjobs切换到文件夹后运行./demo.sh ,我可以执行我的脚本。 该脚本是一个演示文件,它只是创建一个文件夹: #!/ bin / sh的 echo演示输出 mkdir / cronjobs / […]

如何将Wine中的所有文件类型与其相应的本机应用程序相关联?

对于单个文件类型,这很容易完成,如在如何将Wine中的文件类型与本机应用程序相关联中所述? ,通过为所需的文件类型创建.reg 。 但这只适用于AVI。 我使用一些可以发布各种文件的葡萄酒应用程序(uTorrent,Soulseek,Eudora,仅举几例)。 例如,电子邮件附件可以是JPG,DOC,PDF,PPS ……它不可能(并且不可取)跟踪可能在电子邮件中收到的所有可能的文件类型或在torrent中下载。 所以我需要一个更通用和更广泛的解决方案。 我需要文件关联来兑现当前配置的本机应用程序。 我希望在我的系统中配置的所有文件类型都能完成此操作。 我已经想出了如何使解决方案通用化。 只需将.reg已启动的应用程序替换为winebrowser ,如下所示: [HKEY_CLASSES_ROOT\.pdf] @=”PDFfile” “Content Type”=”application/pdf” [HKEY_CLASSES_ROOT\PDFfile\Shell\Open\command] @=”C:\\windows\\system32\\winebrowser.exe \”%1\”” 我测试了这个,它的工作正常。 由于winebrowser使用xdg-open作为后端,并将我的Windows路径转换为Unix路径,因此启动了正确的(Linux)应用程序。 所以我需要一个wine“注册表”的“批量”更新程序,这是一种wine-update-associations脚本,我可以在安装新应用程序时运行它。 也许一个工具可以: 列出我系统中所有Mime Types类型,这些类型具有关联的默认安装应用程序 提取所有需要的信息(glob,mime类型等) 以上述格式生成.REG文件 棘手的部分是:我已经搜索了很多关于如何在Ubuntu 10.10以后完成关联的信息,并且文档很少且令人困惑,至少可以说。 Freedesktop.org没有完整的规范,甚至Gnome文档已经过时了。 到目前为止,我收集了4个包含关联信息的文件,但我不知道要使用哪个(或为什么),或者如何使用它们来生成.reg文件: ~/.local/share/applications/mimeapps.list ~/.local/share/applications/miminfo.cache /usr/share/applications/miminfo.cache /etc/gnome/defaults.list 任何帮助,脚本或解释将不胜感激! 谢谢!

Mac OS X Automator的替代品?

我曾经测试过Mac OS X,而我称之为Automator的东西是一种可视化创建脚本以自动化桌面任务的软件。 这个软件有没有Linux替代品?

linux。shell中“./”是什么意思?

命令./是什么意思? 例如,有时我们使用./config调用文件,有时候调用../config ,谢谢

每5分钟运行一次.sh

我有一个.sh脚本,从日本卫星的服务器下载照片并将其设置为背景图片。 我把它放入启动列表中,但是我如何自动运行它,比如5分钟?

从Shell脚本创建,写入和保存文件

我不想手动编写文件,所以我制作了一个shell脚本。 有没有办法在不让用户按键的情况下自动编写和保存文件? sudo nano blah #write stuff to file #save file #continue ^这将在* .sh文件中 或者是否有另一种在脚本中创建简单文本文件的方法?

如何在bash脚本中省略某些输入变量(如$ 1和$ 2)时使用$ *?

例如, elif [[ $append = $1 ]] then touch ~/directory/”$2″.txt echo “$variable_in_question” >> ~/directory/”$2″.txt 要么创建一个包含”$2″之后的所有输入的文本文件,要么附加一个包含”$2″之后的所有输入的现有文本文件,我将使用什么代替第4行中的”$variable_in_question” ? 我基本上想要”$*” ,但省略”$1″和”$2″ 。