Questions tagged «bash»

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

7
如何抑制dd输出?
我有一个bash脚本,可使用创建一些文件dd。问题是dd抛出了大量的输出,这将使我的脚本的输出混乱。经过搜索,我找到了解决方案: dd if=boot1h of="/dev/r$temp1" >& /dev/null 是否有替代方法,或者重定向到/dev/null唯一方法?
35 bash  sudo  su  dd 

5
为什么我的〜/ .bash_profile不起作用?
我正在使用Linux Mint。我的登录shell(cat /etc/passwd | grep myUserName)是bash。 在启动图形桌面环境并从中运行终端仿真器之后,我可以看到它.bash_profile不是源代码(其中设置的环境变量未export设置)。但是,如果我从一个文本控制台登录(ctrl+ alt+ F1)或手动运行bash -l从终端仿真器,.bash_profile工作正常。 我认为.bash_profile应该在X启动时export获取该资源并且从X运行的所有ed var应在终端中可用,我错了吗? PS将所有内容.bashrc放进去并从中购买.bash_profile不是一个好主意(https://stackoverflow.com/questions/902946/):环境材料应仅获得一次。
35 bash  shell  login  profile 

1
如何 !!在bash工作?
当您忘记命令开头的sudo时,此功能非常有用,!!就像上一个命令的别名一样。范例: $ mv /very/long/path/for/a/protected/sensible/file/caution.h . (...) Permission denined $ sudo !! sudo mv /very/long/path/for(...) . [sudo] password : 我们怎么称呼这个双重!!把戏?因此,通过互联网进行研究非常困难。 它是如何工作的 ?我怀疑与history命令的链接。 它在哪里定义?我可以自己定义其他人吗? 编辑:一些有趣的事件指示符 !!:* 它引用上一个命令的参数。用例: cat /a/file/to/read/with/long/path nano !!:* :p 仅打印命令而不执行它,您必须将其放在事件指示符的末尾。 $ !-5:p sudo rm /etc/fstab -f 这里更多。

10
如何在所有子目录中创建目录?
假设我有一个像这样的目录结构: $ [〜/ practice] ls A B C D/ 现在,我想tmp1在的所有子目录中创建一个目录,practice并执行以下操作: $ [〜/ practice] mkdir * / tmp1 mkdir:无法创建目录“ * / tmp1”:没有此类文件或目录 然后我尝试进行-p切换,最后得到一个以子目录命名*的目录tmp1 $ [〜/ practice] mkdir -p * / tmp1 $ [〜/ practice] ls */ A B C D/ 我知道-pswitch 的用途是创建多个不存在的目录。我只是认为这可能会有所帮助。 如何tmp1一次在所有子目录中创建? 如果可以做到这一点,我如何延长它来创建\tmp1,\tmp2,\tmp3中\a,\b并\c在一次? 编辑:我错过提的是,目录不必是简单而有序,像a,b,c等等,并且要创建的目录不一定喜欢tmp1,tmp2。 $ [〜/ practice] ls 狗/猫/老鼠/ 我想在他们身上有一些 …



2
在bash中,美元符号和方括号$ […]意味着什么?
似乎$[expr]像一样执行算术扩展$((expr))。但是我$[在bash手册中找不到任何提及。该命令没有结果: gunzip -c /usr/share/man/man1/bash.1.gz | grep -E '\$\[' 这个运算符是什么,其行为在任何地方都标准化了吗? 我的bash版本:GNU bash版本3.2.51(1)-发行版(x86_64-apple-darwin13)
34 bash  arithmetic 

3
从grep到awk的管道不起作用
我正在尝试grep正在进行tail的文件日志,并n从一行中获取第一个单词。示例文件: $ cat > test.txt <<EOL Beam goes blah John goes hey Beam goes what? John goes forget it Beam goes okay Beam goes bye EOL ^C 现在,如果我做一个tail: $ tail -f test.txt Beam goes blah John goes hey Beam goes what? John goes forget it Beam goes okay Beam goes …
34 bash  grep  rhel  awk  tail 

3
$ {param:= value}是什么意思?
我在《 Z-Shell用户指南》中阅读了以下内容: 'true'的同义词是':';它通常以这种形式用于提供具有副作用但不应该使用的参数-类似于 : ${param:=value} 这是所有Bourne Shell衍生物中的常见习语。在参数扩展中,$param如果之前为空,则为其赋值,否则保留该值。由于那是参数扩展的唯一原因,因此您:可以忽略该参数。实际上,shell巧妙地构建了命令行-冒号,然后跟随$paramis 的值(无论赋值是否发生),然后执行命令;碰巧':'并没有注意到它给出的参数。 但我不明白。我的:意思是true,但是表达式中有两个冒号。作为一个小问题,为什么这个习语在所有的Bourne Shell衍生物中都使用了这么多?它有什么作用? 注意: 我对该成语在bash和zsh中的作用感兴趣。 谢谢
34 bash  shell  zsh 

9
在vim中打开命令结果给出的文件
我几乎每天都在做以下事情 运行查找(find -name somefile.txt) 在打开结果 vim 问题是我必须复制的结果并将其粘贴find到vim命令中。有什么办法可以避免这样做?我做了一些实验(find -name somefile.txt | vim),但没有发现任何有效的方法。 提前致谢
34 linux  bash  vim  find 

5
我们如何运行存储在变量中的命令?
$ ls -l /tmp/test/my\ dir/ total 0 我想知道为什么以下运行上述命令的方法失败还是成功? $ abc='ls -l "/tmp/test/my dir"' $ $abc ls: cannot access '"/tmp/test/my': No such file or directory ls: cannot access 'dir"': No such file or directory $ "$abc" bash: ls -l "/tmp/test/my dir": No such file or directory $ bash -c $abc 'my …
34 bash  shell  quoting  variable 

6
每秒精确运行一次循环
我正在运行此循环以每秒检查和打印一些内容。但是,由于计算可能要花费几百毫秒,因此打印时间有时会跳过一秒钟。 有什么办法可以写出这样一个循环,以确保我每秒都能得到一个打印输出?(当然,提供循环中的计算时间不到一秒钟:) while true; do TIME=$(date +%H:%M:%S) # some calculations which take a few hundred milliseconds FOO=... BAR=... printf '%s %s %s\n' $TIME $FOO $BAR sleep 1 done
33 bash  timestamps  sleep 


6
“ cat”是内置的shell还是外部程序?
当我使用type命令查找cat是内置的Shell还是外部程序时,我得到以下输出: -$ type cat cat is hashed (/bin/cat) -$ 这是否意味着cat是一个外部程序/bin/cat? 我很困惑,因为当我检查下面的输出时,echo我发现它既是built-in程序又是程序/bin/echo -$ type echo echo is a shell builtin -$ which echo /bin/echo -$ 因此,我无法使用/bin/cat必然意味着外部程序的逻辑,因为echo是/bin/echo但仍是内置的。 那么我怎么知道是什么cat呢?内置还是外部?
33 bash  cat  echo  shell-builtin 

4
如何永久启用scl CentOS 6.4?
我安装了较新版本的devtoolset(1.1),并且想知道如何将它们永久设置为默认值。现在,当我进入运行CentOS的服务器时,我必须运行此命令scl enable devtoolset-1.1 bash 我尝试将其添加到〜/ .bashrc并将其仅粘贴到最后一行,但没有成功。

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.