Questions tagged «bash»

Bash(Bourne-Again SHell)是默认情况下在Ubuntu命令行界面中使用的shell。


3
我的bash脚本应该放在哪里
我有一些非常简单的bash脚本,我将它们整理在一起以完成我经常做的事情。其中之一是运行重复性来执行我的备份任务。只是一堆if..then语句而已。由于这需要以sudo的方式运行,因此最好的做法是将我的脚本放在/ usr / bin(或PATH中的其他位置),chown到root.root,chmod到700?
15 bash  scripts  sudo 

1
终端输入未正确包装,或根本没有包装
一段时间以来,我在所有终端上都遇到了这个持续存在的问题,从我俩都使用过的gnome default和tilda到我刚刚快速旋转过的问题,我的输入将在需要时覆盖其行的开头换行,仅换行。 按Ctrl-A返回到行的开头,我将返回我在第一个输入行之前的行中的某个位置,从该行开始,任何其他输入都会变得非常奇怪。 因为这是一个非常糟糕的解释并且很难想象,所以它是这样的: 有人知道这是什么吗?它不仅在某些情况下发生,而且是永久性的事情,始终存在于每个终端仿真器中每个会话的开始到结束。 输出printf "%s\n" "$PS1" "$COLUMNS": leod:~$ printf "%s\n" "$PS1" "$COLUMNS" \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ 80 输出stty -a: leod:~$ stty -a speed 38400 baud; rows 11; columns 140; line = 0; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; …



1
无法将输出捕获到Bash中的变量中
有麻烦redis-cli。我想redis通过BASH 检查是否拒绝连接(服务器关闭)。 简单测试 #!/bin/bash test=$(redis-cli exit) #exit out of the "not connected console" if [[ -z $test ]] ; then echo "I'm empty :(" fi 我希望Could not connect to Redis at 127.0.0.1:6379: Connection refused将其存储在$ test中,但是此文本将输出到控制台。 我不确定发生了什么。有人有想法么? (Ubuntu 14.04.1)


2
-exec缺少什么参数?
我使用以下命令清除目录和超过30天的文件和目录,然后将其移动到存档目录,如果没有人要求他们提供文件,则可以在几周后删除。目标目录按用户名具有子目录,存档目录也具有子目录。 这是我使用的命令: find /path/to/directory/username/ -mtime +30 -exec mv "{}" /path/to/archive/username/ \; 我建议对此进行修改,以回答关于Ask ubuntu的问题,另一个用户编辑了代码以更改行尾\;,+因为它更快(更正确?)。看这里 但是,+如果-exec命令ls -lh不在我使用的实际命令中,则以这种方式使用可以工作。如果尝试使用,则会+收到错误消息: find: missing argument to '-exec' 我不明白为什么会这样,或者正确的命令是什么。请不要仅仅发布命令更正,我想了解而不是盲目地遵循建议。

2
如果在“ bash” shell中找不到命令(“您的意思是……”功能),如何启用建议?
与此问题类似: 如何删除外壳中的“您的意思是……”功能? 弄错命令时,您会得到类似以下内容的信息: root@pc:~# sido No command 'sido' found, did you mean: Command 'sudo' from package 'sudo' (main) Command 'sudo' from package 'sudo-ldap' (universe) sido: command not found root@pc:~# 是否有用于Linux或ubuntu的shell插件,它推荐了第一个猜测,而我只需要按Enter键即可? 所以应该像这样: root@pc:~# sido No command 'sido' found, did you mean: Command 'sudo' from package 'sudo' (main) Command 'sudo' from package …



3
Shell中的“ quote”命令
该命令的用途是quote什么?我还没有找到任何有关它的信息,它不在文件/bin夹的可执行文件中,而且在Bash内置文件中也找不到。似乎它只打印第一个参数,如echo命令,仅此而已。



7
自动完成常用的命令行命令?
对于某些项目,我经常输入几个命令,例如: cd an/extremely/long/path/in/which/I/have/some/kinda/project 和 ./runmyproject --with some --command line --options set 看到我很懒,我尝试避免一次又一次地完整键入这些命令。因此,我当然可以大量地使用向上键来查找这些命令,但是通常,我之间也有很多命令,以至于搜索所花的时间比键入它还要多。 我现在想知道是否有某种实用工具可以建议一个完整的命令,而我还没有输入所有命令,我经常使用它。这样我可以例如键入“ cd an /”,它已经建议了路径的其余部分,因为在过去的一个月中我已经使用了很多。 我确实找到了一个叫做Bash Smart Complete的东西。但这有点“愚蠢”,因为它没有查看我以前使用的命令。我也刚刚找到了这样的答案,它建议将我经常使用的命令放在文件中。但是,这种响应速度不够快,因为每次启动新项目或更改文件夹或程序参数时,都需要为其创建一个新文件。 有人知道其他任何实用程序或其他方式来实现这一目标吗?或者,有人知道我如何更改Bash Smart Complete,以便它可以查看我过去一个月使用的命令,并完成适合过去一个月中使用最多的命令? [编辑]以下是一些非常好的答案。我还没有将其标记为肯定的答案。不是因为我不喜欢答案,而是因为他们都不是绝对赢家。我认为Finalterm是一个很棒的项目。不幸的是,它的边缘仍然很粗糙。例如; 它尚不支持复制粘贴。不过,我会继续关注该项目,因为当它成熟时,我认为它将是一个很棒的终端应用程序。至于其他答案;他们要么建议创建一个别名(这不是我想要的,因为它会创建多余的工作而不是取消工作),要么使用Ctrl + R,这是一个绝妙的选择(我不知道!)。几个人建议使用Ctrl + R,因此我无法真正突出显示一个答案。 因此,目前肯定使用Ctrl + R,将来我可能会使用Finalterm。 谢谢大家的精彩回答!

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.