Questions tagged «bash»

与其他Bourne / POSIX shell相对,GNU的Bourne Again SHell特有的问题。对于一般关于Unix shell的问题,请改用/ shell标记。

10
每行管道输入执行一次命令?
我想为的每次匹配都运行一次Java命令ls | grep pattern -。在这种情况下,我想我可以做,find pattern -exec java MyProg '{}' \;但是我对一般情况感到很好奇-是否有一种简单的方式说“每行标准输入运行一次命令”?(以鱼或b)。
161 bash  shell  fish 

2
有停止的作业(在bash出口上)
There are stopped jobs.有时我尝试退出bash shell时会收到消息。这是python 2.x中的可重现场景: ctrl+ c由解释器作为异常处理。 ctrl+ z“停止”过程。 ctrl+ d退出python以获取实数。 这是一些实际的终端输出: example_user@example_server:~$ python Python 2.7.3 (default, Sep 26 2013, 20:03:06) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> ctrl+z [1]+ Stopped python example_user@example_server:~$ exit logout There are stopped jobs. Bash没有退出,我必须exit再次退出Bash Shell。 问:什么是“停工”,这是什么意思? …
157 bash  shell  process 

9
如何确定环境变量来自何处?
我有一个前一段时间设置的Linux实例。当我启动并登录时root,我设置了一些环境变量,但我不记得或找不到它们的来源。 我已经检查了~/.bash_profile,/etc/.bash_rc和所有启动脚本。 我已经跑了find,grep但无济于事。 我觉得我必须忘记在某个明显的地方看起来。有解决这个问题的技巧吗?


14
批量重命名文件
我有一个充满图像的目录: image0001.png image0002.png image0003.png ... 我希望将其命名为(例如)。 0001.png 0002.png 0003.png ... 我该怎么做呢?
149 shell  bash  rename 

1
Bash:“> |”是做什么的?
我刚刚看到了这个记录。 $ some-command >| /tmp/output.txt 垂直管道用于标准重定向中,将一个命令的输出“管道化”到另一个命令>|,实际上完全没有用,因为与>在这种情况下一样?

2
如何暂停和恢复流程
在bash终端中,我可以按Control+ Z来暂停任何正在运行的进程...然后我可以键入fg以恢复该进程。 如果我只有PID,是否可以暂停进程?如果是这样,我应该使用什么命令? 我正在寻找类似的东西: suspend-process $PID_OF_PROCESS 然后用 resume-process $PID_OF_PROCESS



8
如何调试bash脚本?
我在bash中的某些脚本中遇到一些有关错误和意外行为的问题。我想调查问题的原因,以便我可以应用修复程序。有没有办法让bash变成某种“调试模式”,以获得更多信息?
135 bash  debugging 

5
我可以在PS1提示中使用什么颜色代码?
我在PS1提示中使用了几种颜色,例如 \033]01;31\] # pink \033]00m\] # white \033]01;36\] # bold green \033]02;36\] # green \033]01;34\] # blue \033]01;33\] # bold yellow 在哪里可以找到可以使用的颜色代码列表? 我查看了Colorize Bash Console Color,但它没有回答有关实际代码列表的问题。 如果还有一个更具可读性的表格,那就太好了。 另请参阅https://unix.stackexchange.com/a/127800/10043
131 bash  colors  prompt 

1
在bash脚本中,在“ if”语句中使用条件“或”
这个问题是我先前提出的问题的后遗症。该站点上的用户好心地帮助我确定了如何编写一个for遍历字符串值的bash 循环。例如,假设循环控制变量fname遍历string "a.txt" "b.txt" "c.txt"。我想echo“是!” when fname具有值"a.txt"or "c.txt",并且为echo“ no!” 除此以外。我已经尝试了以下bash shell脚本: #!/bin/bash for fname in "a.txt" "b.txt" "c.txt" do echo $fname if [ "$fname" = "a.txt" ] | [ "$fname" = "c.txt" ]; then echo "yes!" else echo "no!" fi done 我得到的输出: a.txt 没有! b.txt 没有! c.txt 是! 为什么if当fname有值时语句显然产生true "a.txt"?我使用|不正确吗?
127 bash  shell-script 

3
在Bash中的$(命令替换)中报价
在我的Bash环境中,我使用包含空格的变量,并且在命令替换中使用这些变量。不幸的是我找不到关于SE的答案。 引用变量的正确方法是什么?如果将它们嵌套,该怎么办? DIRNAME=$(dirname "$FILE") 还是我在替代词之外引用? DIRNAME="$(dirname $FILE)" 或两者? DIRNAME="$(dirname "$FILE")" 还是我会使用反引号? DIRNAME=`dirname "$FILE"` 什么是正确的方法?我如何轻松检查报价是否设置正确?

4
Shell逻辑运算符&&,||的优先级
我试图了解逻辑运算符优先级如何在bash中工作。例如,我曾期望,以下命令不会回显任何内容。 true || echo aaa && echo bbb 但是,与我的预期相反,bbb被印刷了。 可有人请解释一下,我怎样才能使复利感&&和||在bash运营商?
126 bash  shell 

5
如何大写命令行参数?
我搜索了SO,发现将下面的字符串大写即可 str="Some string" echo ${str^^} 但是我试图在命令行参数上做类似的事情,这给了我以下错误 试过了 #!/bin/bash ## Output echo ${1^^} ## line 3: ${1^^}: bad substitution echo {$1^^} ## No error, but output was still smaller case i.e. no effect 我们该怎么做?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.