我只是想知道两者之间到底有什么区别
[[ $STRING != foo ]]
Run Code Online (Sandbox Code Playgroud)
和
[ $STRING != foo ]
Run Code Online (Sandbox Code Playgroud)
除此之外,后者是符合 POSIX 的,可在 sh 中找到,而前者是在 bash 中找到的扩展。
我知道 Unix 上有一个命令可以用来监视文件并查看写入文件的更改。这对于检查日志文件非常有用。
你知道它叫什么吗?
这个问题出现在面试前的测验中,这让我很抓狂。任何人都可以回答这个问题,让我放心吗?测验没有提到特定的 shell,但工作描述是针对 unix sa 的。问题再次很简单......
'set -e' 有什么作用,为什么它会被认为是危险的?
尝试在 bash shell 下执行以下命令 echo "Reboot your instance!"
在我的安装中:
root@domU-12-31-39-04-11-83:/usr/local/bin# bash --version
GNU bash, version 4.1.5(1)-release (i686-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
root@domU-12-31-39-04-11-83:/usr/local/bin# uname -a
Linux domU-12-31-39-04-11-83 2.6.35-22-virtual #35-Ubuntu SMP Sat Oct 16 23:57:40 UTC 2010 i686 GNU/Linux
root@domU-12-31-39-04-11-83:/usr/local/bin# echo "Reboot your instance!"
-bash: !": event not …
Run Code Online (Sandbox Code Playgroud) 我有一个不断运行的脚本,我输出到日志文件:
script.sh >> /var/log/logfile
Run Code Online (Sandbox Code Playgroud)
我想在附加到日志的每一行之前添加一个时间戳。喜欢:
Sat Sep 10 21:33:06 UTC 2011 The server has booted up. Hmmph.
Run Code Online (Sandbox Code Playgroud)
有什么柔术可以用吗?
当我有 dircolors 定义的生活充满了......颜色。
当我ls
通过管道less
滚动时,我失去了颜色。
有什么建议?
我需要做的就是以特定用户身份运行特定脚本,该用户nologin/false
在/etc/passwd
.
我会以 root 身份运行脚本,这应该以另一个用户身份运行。跑步:
~# su -c "/bin/touch /tmp/test" testuser
Run Code Online (Sandbox Code Playgroud)
会工作,但我需要一个有效的测试用户外壳。我知道我可以禁用密码passwd -d testuser
并将外壳保留为/bin/bash
这种方式会安全一点,但我需要有nologin/false
外壳。
基本上我需要的是crontab
当我们将作业设置为以特定用户身份运行时会做什么,而不管这个用户是否有nologin/false
shell。
ps 我发现这个线程Executing a command as a nologin user,但我不知道如何concatenate
将命令su -s /bin/sh $user
发送到我需要运行的脚本。
我们刚刚启动了我们的新服务器,并且我们正在所有这些服务器上运行 CentOS。成功安装 Ruby Enterprise Edition 后,我现在想添加 REE /bin
(位于/usr/lib/ruby-enterprise/bin
)目录,使其成为服务器上的默认 Ruby 解释器。
我尝试了以下操作,它只会将其添加到当前的 shell 会话中:
export PATH=/usr/lib/ruby-enterprise/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
为所有用户永久添加此目录的正确方法是什么?我目前以.$PATH
root
我是在 shell 中工作的新手,这些命令的使用似乎是随意的。有没有原因一个标志有一个破折号而另一个可能有双破折号?