Questions tagged «bash»

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

5
在本地计算机和ssh会话中以不同方式设置$ PS1
我将我的主目录保留在版本控制之下,这样我的基本配置就可以在任何计算机上轻松使用。 我的本地计算机上的bash命令提示符是一个复杂,丰富多彩的东西,包括当前的git存储库及其状态。但是user@host ~ $当我ssh进入远程机器时,我宁愿有一个简单的命令提示符。 我希望能够更新我,.profile以便$PS1在本地运行时设置复杂,在ssh会话中运行时设置简化。 基本上,我喜欢像我的$AM_I_LOGGED_IN_VIA_SSH变量一样的变量.profile。那可能吗?
9 bash  ssh  shell  ps1 

6
/ usr / bin / env:php:没有这样的文件或目录
我想使用.sh脚本来部署我的应用程序。该脚本在我的家庭服务器(Ubuntu 15.10服务器)上,标记为可执行文件。使用ssh可以访问此脚本,使用本教程,我已经设置了运行该脚本的ssh登录。因此,基本上我只是调用ssh deployer@XXX.com someArguments它,并someArguments以参数的形式运行我的脚本。用户的deployeruid = 0,因此基本上是uid = 0 root(将来会对此进行更改,我将其设置为仅消除权限问题,直到可以正常工作为止)。 这就是事情变得棘手的地方。该脚本/usr/bin/env: php: No such file or directory在命令中报告/bin/composer install(使用Composer)。我越看那个脚本,事情就越怪异。在此行之前,还调用了/bin/composer self-update和/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.gz php5-cli 已安装软件包和最新版本 $PATH 包含 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games which env 显示 /usr/bin/env 我还尝试了以下操作: 直接bash deploy.sh在root用户下运行脚本(因为它与该用户相同)-完美运行而没有错误 直接运行失败的命令-完美无误 所以在我看来,这是非常具体的情况,为什么此命令不起作用。我花了12个小时来调试它,但在这里没有主意。 PS:/usr/bin/env: node: No such file …
9 linux  ubuntu  bash  ssh  php 

6
如何从命令行缩短文件?
我有一个150GB的xml文件,我想将其缩短(即截断)到大约1GB-我可以使用一个简单的命令(重击或类似命令),还是必须走程序化路线(在vi或emacs中对其进行编辑)即使在大型铁系统上也是一场噩梦吗? (我并不特别担心信息的丢失,我想要一个较短的文件,以便可以在此上测试一个软件,而不必等待很长时间才能得到答案,较短的文件可以使我做到这一点。)

5
Conemu上的Docker
我试图通过创建一个start.sh使用来打开Docker 文件的任务,使Docker在ConEmu上运行git bash。 由于通常码头工人码头指向"C:\Program Files\Git\bin\bash.exe" --login -i "C:\Program Files\Docker Toolbox\start.sh",我可以通过任何方法在ConEmu上执行任务吗?所以像这样:
9 bash  conemu  docker  cmder 


2
从文件中获取标准输入,但仍显示在终端中
我有一个程序,要求我在程序运行时输入数据。想象一下这样的事情: $ ./program Hi there. What's your name? Zambezi What is your quest? To make a program which runs nicely What is your favourite color? Red ... 现在,我有许多测试输入可以运行我的程序。它们都包含以下内容: Arthur, King of the Britons To seek the Holy Grail ... 但是,我的一些测试脚本失败了,不幸的是,对于我来说,很难准确地确定它们失败的原因,因为我的终端看起来像这样: $ ./program < arthur.txt Hi there. What's your name?What is …
9 linux  bash  terminal 

2
无法连接视频ffmpeg
我想将一个位图连接到许多视频的前面,作为标题屏幕或免责声明屏幕。 我尝试将其转换为具有与其余视频相同属性的视频。所以首先我对视频进行内省: ffmpeg version 2.2.1 Copyright (c) 2000-2014 the FFmpeg developers built on Apr 11 2014 22:50:38 with Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) configuration: --prefix=/usr/local/Cellar/ffmpeg/2.2.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid libavutil 52. 66.100 / 52. 66.100 …

4
如何在Linux终端上有选择地浏览Bash命令历史记录
这个问题已经在这里有了答案: bash:每个命令的历史记录。它是如何工作的? (1个答案) 6年前关闭。 每个人都知道(或应该知道!),在终端上,上下箭头键用于导航使用命令的历史记录。 当您每天使用终端时,您的命令历史记录可能会是许多不同命令的一长串,因此导航起来不太容易。举例来说,假设一个月前我使用了iwconfig一组确定的参数(就像我说的那样,这只是一个例子,我现在不需要弄乱它),如何调用该特定命令它的所有参数和参数,而不必浏览数百条历史命令? 我知道我可以使用history以前使用过的命令列表,并在所述列表上!n重新执行n命令,但是当历史记录变大时,它也不是很实用。 理想的事情是拥有可以让我使用一些热键浏览历史记录的内容,而只是在包含我已经在命令行中键入内容的实例之间进行浏览。因此,在我的示例中,键入后iwconfig,使用一些键(也许是PgUp和PgDown?)来浏览以iwconfig开头的条目。 如果不可能的话,也可以像historydo 一样打印一个列表,但它只包含我已经键入的内容(我怀疑history和grepcommand有关,但不确定语法是否正确);但是以前的热键解决方案将是最佳选择。

2
如何保持bash历史?
我不知道这是否可以预期,但是我的历史记录并未在所有会话中保存。这就是说,如果我关闭窗口,那么当我再次打开它时,历史记录为空。如何在整个会话中坚持下去? 这是您要求的命令的输出: set -o | grep history history on $ grep -i history ~/.bashrc ~/.bash_profile ~/etc/bash.bashrc ~/etc/profile ~/.profile /cygdrive/c/cygwin/home/car/.bashrc:# Make bash append rather than overwrite the history on disk /cygdrive/c/cygwin/home/car/.bashrc:# History Options /cygdrive/c/cygwin/home/car/.bashrc:# Don't put duplicate lines in the history. /cygdrive/c/cygwin/home/car/.bashrc:# export PROMPT_COMMAND="history -a" grep: /cygdrive/c/cygwin/home/car/etc/bash.bashrc: No such file or …



4
在程序要打印到stdout的每个新行之前放置一个文本
因此,我想进行一些日志记录,并希望在bash脚本的输出前放置一个日期。问题是有多行输出。我只能将日期放在整个输出之前。但是然后我在日志中有一行没有日期。当然,我可以假设上面一行的日期是相同的,但我希望有解决方案。提前致谢! 这是我的脚本,它调用另一个脚本: #!/bin/sh echo $(date "+%F %T") : starting script echo $(date "+%F %T") : $(./script.sh) echo $(date "+%F %T") :script ended 这是输出: 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 那就是我想要的: 2012-07-26 15:34:12 : starting script …
9 bash  date 

4
Unix工具:如果文件名减去某物怎么办?
我一直在想:大多数GNU / Unix工具采用“减去某物”形式的选项,有时后面跟一个参数。如果您有一个名为减号的文件怎么办? $ ls -f $ rm -f $ ls -f $ mv -f abc mv: missing destination file operand after `abc' Try `mv --help' for more information. $ cat -f cat: invalid option -- 'f' Try `cat --help' for more information. 要么 $ ls -ohello.c $ gcc -ohello …


8
有没有办法在Mac Terminal中跳到命令行命令的较早部分?
我经常会发现自己在bash shell中写了很长的命令-包含许多参数,网址,路由等的东西。我常常会意识到我忘记了,例如,将我的“ bundle exec”放在命令的开头,或者拼错了什么,或者忘记了引号。或简单地将“ cd”代替“ vim”。 这样就开始了按住左箭头键的繁琐过程,直到我回到命令的开头。 有什么办法可以再次跳到行首吗?
9 macos  mac  bash  terminal 

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.