我想以某种方式吐出一个文件(其中包含 env 变量引用)并替换实际值。这是我尝试过的,但正如您所看到的,它不起作用。有任何想法吗?
-bash-3.00$ cat vars_file
${MY_VAR}
-bash-3.00$ export MY_VAR=MY_VALUE; cat ./vars_file | xargs echo
${MY_VAR}
Run Code Online (Sandbox Code Playgroud) 我有一个 bash 脚本,实际上可能有很多脚本,我希望能够在 OSX 的查找器中打开文件。
这是一个非常非常简单的概念,但由于某种原因,bash 脚本在查找器的“打开方式”对话框中显示为灰色。
我认为有多种方法可以使用 applescript 或打包作为应用程序......但我一直无法弄清楚这些,我真的不想为了这个微不足道的任务而选择另一种语言- 有人可以用勺子喂我怎么做吗?
谢谢!
我经常忘记用 sudo 运行命令,所以我发现自己经常sudo !!在之后立即打字。
我试过别名这个,但 bash 扼杀了这一!!部分。有没有办法在别名中表示这个快捷方式?
假设我有一个名为 .bash 的 bash 脚本log.sh。在这个脚本中,我想从管道读取输入,但我也想知道用于将输入管道输入到我的命令。例子:
tail -f /var/log/httpd/error | log.sh
Run Code Online (Sandbox Code Playgroud)
在shell脚本中,我想知道命令tail -f /var/log/httpd/error.
在终端,我这样做:
sudo vi /etc/profile
Run Code Online (Sandbox Code Playgroud)
但我得到了一个只读版本。作为超级用户,我从来都无法编辑任何东西——这是怎么回事?
所以我想做一些日志记录,因此,想在 bash 脚本的输出前面放一个日期。问题是它有多行输出。我只能将日期放在整个输出之前。但是后来我在日志中有一行没有日期。当然,我可以假设上一行的日期是相同的,但我希望有一个解决方案。提前致谢!
这是我调用另一个脚本的脚本:
#!/bin/sh
echo $(date "+%F %T") : starting script
echo $(date "+%F %T") : $(./script.sh)
echo $(date "+%F %T") :script ended
Run Code Online (Sandbox Code Playgroud)
这是输出:
2012-07-26 15:34:12 : starting script
2012-07-26 15:35:14 : First line of output
second line of output
2012-07-26 15:35:17 : script ended
Run Code Online (Sandbox Code Playgroud)
这就是我想要的:
2012-07-26 15:34:12 : starting script
2012-07-26 15:35:14 : First line of output
2012-07-26 15:35:15 : second line of output
2012-07-26 15:35:17 : script ended
Run Code Online (Sandbox Code Playgroud) 我在我的 Ubuntu 机器上运行了一些程序,这些程序长时间使用最大 CPU 功率。这会导致计算机过热。
有人可以建议一个好的程序来降低 CPU 功率以保持设定的温度吗?
我试过木星,但它没有那个功能。我也尝试了一些 Linux 脚本,但我没有修改它们以在 Ubuntu 上工作的技能。
任何帮助将非常感激。
我想使用 .sh 脚本来部署我的应用程序。该脚本位于我的主服务器(Ubuntu 15.10 服务器)上,标记为可执行文件。对这个脚本的访问是通过 ssh 完成的,使用本教程,我设置了 ssh 登录,它运行该脚本。所以基本上我只是调用ssh deployer@XXX.com someArguments它并使用someArguments作为参数运行我的脚本。用户的deployeruid=0,所以它基本上root(这将在未来改变,我设置它只是为了消除权限问题,直到它正常工作)。
这就是事情变得棘手的地方。脚本报告/usr/bin/env: php: No such file or directoryat 命令/bin/composer install(使用Composer)。我越看那个剧本,事情就越奇怪。在这一行之前,还有一个叫做/bin/composer self-updateand /bin/composer -V,它既能正确运行,又能显示正确的输出。
我检查了以下几件事:
/usr/bin/env php -v显示正确的 PHP 版本(与 相同/usr/bin/php -v)whereis php 显示 php: /usr/bin/php /usr/local/bin/php /usr/share/man/man1/php.1.gzphp5-cli 安装包和最新版本$PATH 包含 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/gameswhich env 显示 /usr/bin/env我也尝试过以下事情:
bash deploy.sh在 root 下运行脚本(因为它与该用户相同) - 完美无误在 Windows (10) 应用程序上的 Ubuntu 上的新 Bash 上,我尝试将目录颜色从蓝色更改为更明显的颜色,但由于某种原因无法更改某些文件/目录颜色。如何更改所有目录/文件颜色?我的 .bashrc 文件当前设置为文件和目录颜色的颜色提示为绿色和其他亮色。设置是:
LS_COLORS=$LS_COLORS:'di=1;31:fi=0;31;bd=0;32:fi=0;33:cd=0;96';
export LS_COLORS
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[0;31m\]\u@\h\[\033[0,31m\]:\[\033[0;31m\]\w\[\033[0,31m\]\$ '
Run Code Online (Sandbox Code Playgroud)
某些文件和文件夹已更改了与我的 .bashrc 文件相对应的颜色,但其他文件和文件夹由于某种原因没有更改。
要在项目文件夹中以管理员身份运行 bash 控制台 (Windows),目前我首先以管理员身份启动 bash,然后手动导航到极其费力的文件夹。有什么方法可以将图形快捷方式直接添加到此文件夹中以用于“以管理员身份运行”bash 控制台?