我试图写一个bash脚本(在Ubuntu中),将使用tar备份一个目录。 我该如何检查脚本,以便它只能以root身份(或使用sudo)运行? 例如,如果用户运行脚本,应该说这个脚本必须以sudo权限运行,然后退出。 如果脚本以root身份执行,它将继续通过检查。 我知道必须有一个简单的解决scheme,我只是无法通过Googlesearchfind它。
我试图编写一个脚本,将安装一堆软件,我不想以root身份运行一切,所以我想能够提示input密码,然后去安装,使用sudo或su在我需要时获得特权。 我正在做一个sudo -v在脚本的开头提示input密码,然后通常在后面使用sudo。 这很好,直到我到达一个接pipe超时的单一安装。 我宁愿不必永久增加超时。 有没有办法可以增加sudo的当前会话超时?
使用postfix,我希望所有传入的邮件到任何地址(包括那些不映射到本地用户的地址)被传送到一个脚本。 我已经尝试在/etc/postfix/main.cfconfigurationmailbox_command : mailbox_command = /path/to/myscript.py 如果用户是本地用户,这很有效,但对于没有别名的“未知”用户则失败。 我尝试将luser_relay设置为本地用户,但是这会luser_relay ,所以命令无法运行。 我尝试设置local_recipient_maps= (空string),但消息仍然弹回(未知的用户)。 是否有一个魔术调用我可以用来让所有已知和未知的用户也去脚本? 完整的/etc/postfix/main.cf如下 – 它是默认的Ubuntu 10.04,除了mailbox_command行: # See /usr/share/postfix/main.cf.dist for a commented, more complete version # Debian specific: Specifying a file name will cause the first # line of that file to be used as the name. The Debian default # is /etc/mailname. #myorigin = […]
我正在尝试为新服务器编写一个configuration脚本,第一步是使用apt-get install来安装一系列必需的软件包,例如MySQL,phpMyAdmin等。但是,当dpkg尝试configuration它时,要求您提供一些选项,例如MySQL root密码,phpMyAdmin密码,使用哪个服务器等。 因为我可能会把这个脚本传递给不太可能阅读提示的同事,而且我希望简单地启动它并离开, 我想知道如何传递一系列“默认”答案/值使用。 这可能包括在命令行上传递的用户名/密码/其他dynamic值。 – 我意识到,在脚本中使用密码是一个安全问题,但我愿意忽略它,特别是在安装软件包的更一般的意义上,这意味着一个答案。
我是一个bash新手,但我想创build一个脚本,我想让用户从选项列表中select多个选项。 基本上我想要的是类似于下面的例子: #!/bin/bash OPTIONS="Hello Quit" select opt in $OPTIONS; do if [ "$opt" = "Quit" ]; then echo done exit elif [ "$opt" = "Hello" ]; then echo Hello World else clear echo bad option fi done (来自http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1 ) 但是,我的脚本将有更多的select,我想要允许select多个。 所以像这样的东西: 1)选项1 2)选项2 3)选项3 4)选项4 5)完成 对他们select的人进行反馈也是很好的,例如在他们已经select的旁边加上符号。 例如,如果您select“1”,我想页面清除并重新打印: 1) Option 1 + 2) Option 2 […]
我正在寻找一个程序,把一个ASCIIstring变成类似下面的“ascii艺术”: .-“^`\ /`^” – 。 “。 ___ \ / ___`。 / / .—。 .—。\ \ | //' – 。 ___________________________ .-'\\ | | ; | \ / ————————– // | | \ || | \ _)红帽(_ / | || / \ | \。 \; | 企业Linux || ; /。 / | / '\ _ \ […]
我正在尝试在工作中部署一些Windows 10计算机,并且需要删除或禁用预先安装的应用程序。 出于某种原因,pipe理层认为Xbox应用程序和Candy Crush Soda Saga(等)不应安装在公司工作站上。 事实上,我们试图卸载它们,但是它们再次出现在任何login的新用户身上,这是不可接受的。 我们如何从公司的Windows 10映像中真正摆脱这些应用程序?
我需要编写一个脚本,从一个新的Ubuntu服务器安装构build我的服务器。 在诸如Apache和PHP之类的东西中,需要安装MySQL。 这里唯一的问题是,当我使用apt-get来安装MySQL的时候,安装程序会popup一个对话框,允许我inputroot密码。 也就是说,人际互动是必需的。 安装过程中如何绕过这个屏幕,避免人为干扰,同时仍然使用apt-get安装MySQL?
我想从脚本输出中捕获所有的日志数据,包括错误消息,并将它们全部redirect到日志文件。 我有像下面的脚本: #!/bin/bash ( echo " `date` : part 1 – start " ssh -f [email protected] 'bash /www/htdocs/server.com/scripts/part1.sh logout exit' echo " `date` : sleep 120" sleep 120 echo " `date` : part 2 – start" ssh [email protected] 'bash /www/htdocs/server.com/scripts/part2.sh logout exit' echo " `date` : part 3 – start" ssh [email protected] 'bash /www/htdocs/server.com/scripts/part3.sh logout […]
当我在第一份工作中担任pipe理员时,我感到沮丧的是,我们对Windows服务器的pipe理stream程是一系列点击式操作; 我们永远无法与具有一组shell脚本的Unix服务器的效率水平相匹配,以实现大量工作的自动化。 我很快就读到了关于WSH和ADSI的内容,并没有浪费时间学习使用脚本能够实现多less自动化。 虽然有一个巨大的问题 – 几乎没有我的Windows同事真的有兴趣学习脚本。 他们似乎对手动点击鼠标的事情感到高兴,对于使用脚本代表他们工作的前景从未激动过。 尽pipe效率显着提高,但我努力说服他们select脚本技能。 之后,我离开了这个职位,去追求一个全职的软件开发职业。 在不同的环境和不同的客户工作了将近十年,我仍然遇到Windowspipe理员主要拥有这种一般“心情”,他们尽可能避免脚本。 尽pipe可访问性水平日益提高,但Windows服务器技术正在为脚本和自动化开放。 我几乎可以确定,绝大多数pipe理员都是pipe理员,因为他们绝对讨厌执行任何types的编程任务。 有什么办法可以鼓励和激励pipe理员,脚本能够真正帮助他们从长远来看?