Tag: bash

Bash:无限的睡眠(无限的阻挡)

我使用startx来启动X来评估我的.xinitrc 。 在我的.xinitrc我使用/usr/bin/mywm启动窗口pipe理器。 现在,如果我杀死我的WM(为了testing其他WM),X也将终止,因为.xinitrc脚本到达了EOF。 所以我在我的.xinitrc的末尾添加了这个: while true; do sleep 10000; done 这样,如果我杀死我的WM,X将不会终止。 现在我的问题是:我怎么能做一个无限的睡眠,而不是循环睡眠? 有没有一个命令会像冻结脚本? 最好的祝福

如何指定一个多行shellvariables?

我写了一个查询: function print_ui_hosts { local sql = "select ………" print_sql "$ sql" } 本地sql – 一个很长的string。 查询未格式化。 我怎样才能把一个string分成多行?

什么linux的shell命令返回string的一部分?

我想find一个可以返回string的一部分的Linux命令。 在大多数编程语言中,它是substr()函数。 bash是否有任何可用于此目的的命令。 我想能够做这样的事情… substr "abcdefg" 2 3 – 打印cde 。 随后的类似问题: 在Bash中提取子string

为什么#!/ usr / bin / env bash优于#!/ bin / bash?

我曾经在很多地方看到过,包括对这个网站的推荐( 什么是首选Bash shebang? ),使用#!/usr/bin/env bash优先于#!/bin/bash 。 我甚至看到一个有进取心的人build议使用#!/bin/bash是错误的,而bash的function会因此丢失。 所有这一切,我使用bash在一个严格控制的testing环境中,每个stream通驱动器基本上是一个主驱动器的克隆。 我理解可移植性的论点,虽然它不一定适用于我的情况。 有没有其他的理由更喜欢#!/usr/bin/env bash的替代品,并假设便携性是一个问题,是否有任何理由使用它可能会破坏function?

在Bash中,如何在文件的每一行之后添加一个string?

如何在使用bash的文件的每一行之后添加一个string? 可以使用sed命令完成,如果是这样的话?

Bash – 如何find目录及其子目录中最大的文件?

我们刚刚开始一个UNIX类,正在学习各种Bash命令。 我们的任务涉及在一个目录下执行各种命令,这个目录下面还有许多文件夹。 我知道如何使用以下命令从根文件夹中列出和计算所有常规文件: find . -type l | wc -l 但我想知道从哪里去find整个目录中最大的文件。 我见过关于du命令的一些事情,但是我们还没有意识到,所以在我们学习的东西中我假设我们需要以某种方式将它连接到ls -t命令。 如果我的“行话”不正确,请原谅我,我还是习惯了!

获得“警告! PATH没有正确设置“当使用rvm使用2.0.0 – 默认

以上第一次不工作,第二次工作。 尝试为任何新的shell窗口设置ruby版本为2.0.0。 干 $ rvm use 2.0.0 –default 给 Warning! PATH is not properly set up, '/home/durrantm/.rvm/gems/ruby-1.9.3-p125/ bin' is not at first place, usually this is caused by shell initialization files – check them for ' PATH=…' entries, it might also help to re-add RVM to your dotfiles: 'rvm get stable –au to-dotfiles', to fix […]

在printf中填充字符

我正在编写一个bash shell脚本来显示一个进程是否正在运行。 到目前为止,我在这里。 printf "%-50s %s\n" $PROC_NAME [UP] 这给了我一个输出,如: JBoss [DOWN] GlassFish [UP] verylongprocessname [UP] 我想用“ – ”或“*”填充两个字段之间的空白,以使其更具可读性。 我怎样才能做到这一点,而不会干扰领域的一致? 我想要的输出是: JBoss ——————————————- [DOWN] GlassFish ————————————— [UP] verylongprocessname —————————– [UP]

我可以只grep文件的前n行吗?

我有很长的日志文件,是否有可能要求grep只search前10行?

在Bash脚本中作为命令运行一个string

我有一个Bash脚本构build一个string作为命令运行 脚本: #! /bin/bash matchdir="/home/joao/robocup/runner_workdir/matches/testmatch/" teamAComm="`pwd`/a.sh" teamBComm="`pwd`/b.sh" include="`pwd`/server_official.conf" serverbin='/usr/local/bin/rcssserver' cd $matchdir illcommando="$serverbin include='$include' server::team_l_start = '${teamAComm}' server::team_r_start = '${teamBComm}' CSVSaver::save='true' CSVSaver::filename = 'out.csv'" echo "running: $illcommando" # $illcommando > server-output.log 2> server-error.log $illcommando 这似乎并没有正确地向$serverbin提供参数。 脚本输出: running: /usr/local/bin/rcssserver include='/home/joao/robocup/runner_workdir/server_official.conf' server::team_l_start = '/home/joao/robocup/runner_workdir/a.sh' server::team_r_start = '/home/joao/robocup/runner_workdir/b.sh' CSVSaver::save='true' CSVSaver::filename = 'out.csv' rcssserver-14.0.1 Copyright (C) 1995, 1996, 1997, 1998, […]