Questions tagged «bash»

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

3
为什么重定向到同一文件会截断该文件?
通常,我们使用其他文件来重定向输出。 例如 : cat < first > temp 在此命令中,first的内容重定向到temp而不是标准输出。 那如果我使用相同的文件名,为什么会截断文件呢? 为什么不能覆盖相同的文件? cat < first > first

5
检查是否已安装某些程序的脚本
如何创建一个bash脚本来检查是否已安装程序,如果尚未安装,则进行安装? 谢谢你的帮助。 这是我到目前为止的代码: #/bin/bash PS3="choose an option" select opcion in "Installing_Youtube" "exit" do case $opcion in "Installing_Youtube") youtube-dl > /usr/bin if [ $? -eq 127 ] ; then echo "installing youtube" apt-get update apt-get install youtube-dl mkdir Videos else echo "Youtube already installed" fi ;; "exit") exit
11 apt  bash  scripts 




2
如何自动将终端标题设置为目录名称而不包含路径
目前,我的bash终端/标签标题是根据我所在的目录设置的。例如: bob@bobscomputer:~/i/had/some/great/pie/yesterday 如果我有多个选项卡并排打开,这不是很有用。例如,如果我有上述dir并排打开的4个选项卡,那么我看到的只是 bob@bobscomputer:~/i/had... 4次。 我希望将所有终端标题自动设置为路径的最后一部分。在上面的示例中,我希望标题为 yesterday 显然,更改目录时标题应该会更改。我想在不更改提示的情况下执行此操作,因此提示和终端标题应该不同。 有没有办法做到这一点?

3
如何配置Ubuntu在给定时间每天重启?
使用终端或bash文件,如何配置Ubuntu每天(例如)凌晨3点重新启动? 换句话说,我想安排通过终端自动重启。 我还没有在Google或AskUbuntu上找到与此相关的任何东西,而且我一般对Ubuntu还是陌生的(刚刚得到了我的新Raspberry Pi)。
11 bash  reboot  schedule 


3
为什么为用户提供了用于PostgreSQL的外壳?
cat /etc/passwd |grep postgre postgres:x:115:127:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash apt-cache show postgresql Package: postgresql Priority: optional Section: database Installed-Size: 65 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Debian PostgreSQL Maintainers <pkg-postgresql-public@lists.alioth.debian.org> Architecture: all Source: postgresql-common (136) Version: 9.1+136 Depends: postgresql-9.1 Filename: pool/main/p/postgresql-common/postgresql_9.1+136_all.deb Size: 5468 MD5sum: 34f5a1373ad5cd0b6f5aa3e7af06c9e7 SHA1: 6f271758bd51c23614b12fd63fb711ecfa43e9e5 SHA256: e8921a22b560e81f57a2a00001e31ba1036f67a8e7f151bf8f977b4919fc559a 我可以替换/bin/bash使用/bin/false?

2
bash脚本中的别名与函数
我想知道bash shell中别名和函数之间的区别-以及何时使用哪一个。 显然,由于函数可以接受参数,因此它们的功能要强大得多-因为我主要是在上网本上工作,并且希望节省能源和处理能力,所以我特别想了解更多有关性能差异的信息这两种扩展bash功能的方法是。
11 bash 

3
“ source x”,“。”和有什么区别?Bash中的“ x”和“ ./x”?
我有一个bash来源run.sh,如下所示: #!/bin/bash if [ $# -ne 1 ]; then exit fi ... 当我以两种方式执行它时,会有不同的行为。第一种方法是 source run.sh 执行后将关闭终端。第二种方式是 ./run.sh 这将简单地完成脚本的运行,并停留在终端上。我问是否有用于退出对既有的bash脚本命令source run.sh和./run.sh执行。我也尝试return过,在./run.sh执行下效果不佳。 更笼统地说,我对为什么发生这种情况以及使用“源”和“源”之间的区别感兴趣。用于脚本执行?
11 bash  scripts 

5
将结果定位到rm
我尝试跑步 locate *.orig | xargs rm 但它说 No such file or directory 我已经看到了解决方法,find但是locate将返回对象的完整路径,因此应该可以


3
在bash脚本中使用sudo的最佳实践
我有一个运行时间很长的bash脚本,其中一些命令需要以root身份运行,而大多数命令需要在sudo之前以常规用户身份运行,因为这会破坏文件所有权等。 我想出了一些方法,但是每个方法都有一些问题 方法1:在文件内部使用sudo #!/bin/bash sudo echo "I must be run by root" touch needsToBeOwnedByUser1 echo "needs to be run by user" sleep 1000 sudo echo "I, again, must be run by root" 从编写代码的方式来看,这看起来不错。sudo是在实际上需要由root用户运行的少数语句之前编写的,但是如果每次sudo调用之间的时间太长,则sudo再次要求输入密码。同样,如果第一次执行sudo失败(例如,由于密码无效),则脚本的其余部分仍将执行。 方法2:使用sudo调用文件,然后在需要时更改回原始用户 #!/bin/bash echo "I must be run by root" su username -c 'touch needsToBeOwnedByUser1' su username -c …
11 bash  sudo  su 

2
如何找到系统上的所有视频文件?
我尝试使用Unity Lens文件搜索*.*并按Last Modified = All,Type = Videos和Size = All 进行过滤,但什么也没找到,尽管我知道我的Pictures文件夹中有一些.3gp文件。我知道在文件系统上安装的另一个驱动器上也有许多视频文件。我编译了一个可能的扩展列表,并尝试find使用find./ -name“ * .ext” -o(等,等等,广告恶作剧),利用这些命令进行了无数次迭代,没有任何运气。解决办法是什么?

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.