Questions tagged «bash»

Bash是来自GNU Project的类Unix操作系统的免费外壳。

1
解释rm的-W标志
什么是-W对标志rmDO(上BSD或Mac OS X)? 根据其手册页,该标志尝试“取消删除命名的文件”。目前,“此选项只能用于恢复受白电覆盖的文件”。这是怎么回事,我该如何使用?
8 bash  shell  rm 

3
vim无法使用:!执行unix命令!由于换壳
我们公司使用Red Hat Linux系统,并在/ home中为每个人分配一个帐户。不幸的是,我们的系统正在使用tsch,这对我不利。而且,由于我没有超级用户权限,因此无法使用chsh命令自己更改为bash。更糟糕的是,ypchsh对我也不可用。因此,最后,我在.cshrc中添加了以下几行: bash echo $0 并适当配置.bashrc(从原始.cshrc复制并修复必要的语法错误)。现在,明显的shell变成了bash(可以从“ echo $ 0”命令中看到)。 现在问题来了: 当我使用vim编辑cpp文件(例如,Hello_World),并在vim中使用“:!g ++ -g Hello_World.cpp -o hw.out”编译文件时,将不会显示任何结果,并且vim退出显示了“ bash”(就像终端打开时一样),但是没有通常的“击键”来回到我在vim中的工作。在Hello_World.cpp文件夹中,有一个.Hello_World.cpp.swp文件,但没有hw.out。再次运行vim Hello_World.cpp时,表明此cpp文件已打开。 但是,如果我g ++文件夹中的cpp文件但不使用vim和:!,一切正常。事实上, :!现在看来对于vim是非法的。 如果我使用原始的tcsh,一切都还可以。 我该如何解决这个奇怪的错误? 谢谢您的提前帮助。 清 顺便说一句:我喜欢bash而不是tcsh,这主要是因为它具有HISTIGNORE和HISTCONTROL的便利性,尽管tcsh也具有histdup设置。 我发现以下内容对我的问题有所帮助,但仍然不令人满意。 如何在Vim中运行Unix命令?
8 bash  vim  vimrc  tcsh 


2
如何检查ssh期间是否发生任何错误?
我正在编写部署脚本,如果发生任何错误,我需要回滚。 例如: #!/bin/bash ssh myapp ' mkdir /some/dir # check if above command failed, and execute rollback script if needed ' # or maybe do it from here? 现在,当我执行此脚本时,如果mkdir失败,它将在我的屏幕上打印并继续执行。我需要捕获该错误并对此进行处理。
8 linux  bash  ssh 

3
如何从Cinnamon Mint 13(Maya)下的文件菜单访问键禁用Alt-f快捷键绑定?
我在Linux Mint 13(Maya)上运行Cinnamon。我想禁用终端文件菜单访问快捷方式,因为它绑定到Alt + f上,我宁愿使用该快捷方式在bash中向前移动一个单词。 我查看了“ 如何在Linux Mint 13中禁用菜单的键盘快捷键? ”,并且找到了“活动窗口菜单”的快捷键绑定(在“菜单”->“首选项”->“键盘”->“快捷方式”下),在任何建议的位置都找不到用于文件菜单访问的配置。




3
iTerm2上的tmux和shell拆分选项之间的区别?
我目前在我的开发环境中切换到iTerm2 + VIM。我注意到iTerm2的最新版本支持tmux,有人用它tmux来将窗口分成几个会话。我还注意到,iTerm2具有开箱即用的选项,可以将窗口分为多个会话。例如,仅使用CMD + D,就可以在垂直和水平方向上拆分任意数量的会话。因此,在我看来,您可以使用这些选项来完成相同的功能。我可能完全错了。 我的问题是:使用tmuxiTerm2上的拆分选项是否有区别/好处?
8 macos  bash  shell  tmux  iterm 

5
为所有文件添加.jpg扩展名
我有一个目录,某些文件的扩展名是大写(.JPG)而不是小写。 我想确保每个文件都有.jpg作为扩展名。我将如何从shell提示中执行此操作?
8 linux  bash 


6
在Bash(Mac / Linux终端外壳)中,可以使上下箭头键像在文本编辑器中那样起作用吗?
在文本编辑器中,如果按向上和向下箭头键,它将在文本行之间移动光标。 在Bash中,如果我输入了一条跨越多行的长命令,并且按了向上和向下箭头键,它将在命令历史记录中循环显示。 我想要Bash中的前一种行为。这可能吗?如果不是,是否有任何方法可以在多行命令中直接向上或向下移动光标?

3
Windows上的Ubuntu上的BASH(适用于Windows的AKA Linux子系统)10-如何设置PATH?
感谢Anniversary Update,现在我可以在Windows 10的Ubuntu上使用BASH了。以前,我使用Cygwin,并在Cygwin中设置了Maven(并使它完全工作),主要包括安装Maven,然后修改PATH环境。变量(在中~/.bashrc) 好吧,我正在尝试使用BUW做同样的事情,但是据我所知,PATH变量被忽略了(将Maven bin目录添加到PATH,然后执行which mvn返回空白)。我是否缺少技巧,还是必须PATH在BUW中进行其他设置? 编辑: 让我具体一点。我需要在“ ???”中做什么 步骤获取pathTestScript.sh到路径上? mkdir -p ~/pathTest touch ~/pathTest/pathTestScript.sh echo '#!/bin/sh' >> ~/pathTest/pathTestScript.sh echo 'echo "it works!"' >> ~/pathTest/pathTestScript.sh bash ~/pathTest/pathTestScript.sh # Should output 'it works!' # ????????? pathTestScript.sh # Should output it works!' 编辑2: 我想明确我的最终目标。我通常在系统上安装了JDK和Apache Maven。我在Cygwin上都运行得很好。既然BUW已经发布,我想在那里使用它们,但是我不知道如何为它们设置环境,因为我对PATH所做的任何更改似乎都没有效果。 编辑3: 好的,现在我担心我在追赶野鹅。如果这样做echo $PATH,我得到/mnt/c/Program\ Files/apache-maven-3.3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games 这就是我的期望。那就是我放入~/.bashrc文件的内容...然后ls /mnt/c/Program\ Files/apache-maven-3.3.9/bin我得到了 …

3
我将使用哪些命令来顺序创建两个子进程?
我想生成两个子进程,但是要等到第一个子进程在执行中达到某个点(可以通过检查stdout来确定)之后再生成第二个子进程。我不确定要完成此操作需要使用哪些unix命令,并且由于unix命令名的简洁性和有时是隐秘的性质,因此很难通过Google查找任何内容。 我不是要寻求解决的特定问题的解决方案(尽管任何其他指针都会受到欢迎),我主要关心的是知道我想查找并学习使用哪些unix命令。

2
是否可以配置bash完成目录名称的方式?
我想指示bash使用特殊方法对某些目录名称执行补全。例如,如果路径以“ $$”开头,bash会调用我的程序来执行完成,否则将正常执行。 这是可能吗?您将如何实施? 赏金:非常感谢您回答该问题。目的是允许用户在使用特定前缀启动命令时自动跳转以完成所有命令的路径。因此,例如,当从远目录复制文件时,可以键入: cp $$patern + <Tab> 和自动跳转将完成 cp /home/user/CompliCatedDireCTOry/long/path/bla/bla 并且您只需要添加要放置文件的位置即可。当然,我可以使用ott的注释将其添加到一些特定的命令中,但是如果有人有更好的主意,我将不胜感激。

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.