Tag: bash

BASH可以在系统托盘中显示为应用程序指示器吗?

我有一个bash脚本,在一段时间后锁定屏幕 ( 应用程序将在Ubuntu设定的时间后锁定屏幕 )。 我想在Ubuntu的系统托盘/应用程序指示器栏中显示剩余时间。

长时间运行命令完成时的桌面通知

每当一个运行时间超过15秒的命令在交互式shell中完成时,我想要一个桌面通知。 换句话说,我希望所有命令都包含在这样的东西中 start=$(date +%s); ORIGINAL_COMMAND; [ $(($(date +%s) – start)) -le 15 ] || notify-send “Long running command finished” 什么是在bash中实现这一目标的最佳方法?

如何使用代字号作为我的主目录的快捷方式?

我很困惑,试图将一些文件从一台PC复制到另一台PC。 我弄清楚了,但语法仍然让我感到困惑。 这有效: scp ~/Desktop/Volenteer.png jay@server.ip:~j0h/b 它将Volenteer.png放在文件夹/home/j0h/b 。 但是,这不起作用: scp ~Desktop/Volenteer.png jay@server.ip:~j0h/b 这也失败了,没有找到退出状态1文件: scp ~/Desktop/Volenteer.png jay@server.ip:~/j0h/b 就像这样: scp ~Desktop/Volenteer.png jay@server.ip:~j0h/b 很明显, ~和~/之间存在一些差异。差异在于~/的存在 $~/ bash: /home/j0h/: Is a directory $ ~ bash: /home/j0h: Is a directory 那么为什么在scp中, ~解决~/ ? 这是一个猜测,我无法证实这是发生了什么。 但它似乎不一致,因此令人困惑。 这是scp中的错误吗? 还是有什么关于代字号我错过了?

如何修改PATH以便在每个终端会话中都可以进行更改

我想添加一个目录来搜索我的搜索路径。 我知道我必须修改PATH环境变量。 但是,我希望更改是永久性的,以便它始终生效,对于我打开的每个终端(bash)窗口。 https://help.ubuntu.com/community/EnvironmentVariables中存在令人困惑且可能存在冲突信息的过载 我正在使用Ubuntu 10.04。 假设我想将/usr/local/foo到我的PATH 。 我应该修改哪个文件( .bashrc , .profile , .bash_login等…)以及新行应该是什么样的?

将Linux配置,脚本和文档备份到Gmail

在gmail.com上,我看到了这个: 使用了0.38 GB(2%)的15 GB 我有20 GB的30 GB分区,里面装满了Ubuntu,但可能只有1 GB的重要文件,为什么不使用这个免费的云存储进行备份呢? 是否有一个程序要做到这一点? 我可能会写一个但是在我开始之前想问一下。 我还想要文件压缩和分段,因为有些系统有10 MB的附件限制(比如工作中的那个)。 谢谢 :)

Bash历史搜索,部分+向上箭头

我搜索过,但没有找到任何关于此的内容。 我正在使用终端在bash中寻找function。 回过头来的时候,我在debian系统上有一个用户,而且一位朋友为我设置了一个方便的历史搜索function(我相信我之后使用了tcsh),在那里我输入上一个命令的开头,点击向上箭头,它会根据部分字符串进行搜索。 例如,如果我的历史是: ./script.pl ./script.pl arg1 cat output cat output | grep yada 我输入. ,按向上箭头,它会显示: ./script.pl arg1 。 再次按下它会显示./script.pl等。 非常像它会在.bash_history上执行grep 。 有没有办法获得这个function?

如何显示crontab触发的notify-send消息?

test.sh:/ /usr/bin/notify-send “test” 以下工作: bash ~/Documents/test.sh 但是crontab从不显示通知。 为什么? */1 * * * * bash ~/Documents/test.sh

UEFI机器无法通过NVRAM bootcatalog启动Ubuntu。 怎么修?

这里发布的答案应该是: 避免要求用户下载和安装其他软件包或PPA。 尽可能快速和简单。 (我尝试过启动修复,但没有资格。) 可能为没有太多终端使用经验的用户提供脚本。 像这样的类似问题已经多次发布到网站: 最近发布的Ubuntu已成功安装在支持UEFI的计算机上,该计算机预装了Windows 8或更高版本的副本。 efibootmgr -v的输出显示/efi/ubuntu/shimx64.efi已注册为ubuntu 。 (这些新引导条目通常以最高优先级添加。另请参阅使用efibootmgr更改引导顺序 ) 重新启动后,未显示操作系统选择菜单(GRUB),并且计算机直接启动到Windows。 访问固件设置菜单 (以前称为BIOS)时: 没有任何迹象表明如何更改个别操作系统的引导顺序,或者没有任何操作系统(如Windows Boot Manager )显示在所有设备上。 安全启动function在固件设置中关闭。 通过在UEFI模式下启动实时媒体来安装Ubuntu, 而不是在Windows中运行WUBI -Installer。 Windows安装本身未被修改,替换或删除。 该驱动器包含GPT分区表。 Windows磁盘管理显示磁盘上至少存在以下3个分区: EFI系统分区 Windows分区 一个不可读的RAW分区,可能是Ubuntu安装 您尝试在(!)备份之前完全删除\EFI\BOOT\目录。 这通常表示默认引导加载程序或引导进程在某种程度上被硬编码为启动Windows时出现问题。 在大多数情况下,可以通过将\EFI\BOOT\BOOTx64.EFI为另一个允许引导其他操作系统的文件来轻松修复此问题。

在终端命令提示符中更改用户,主机,目录信息的颜色

是否可以在命令提示符中更改user@computer的颜色,以及提示显示的当前目录和命令部分? 我已经看过OSX用户做过的这样的事情,但我不知道如何在gnome终端中做同样的事情(我只能改变前景色和背景色)。 例如,当尝试编译有错误的程序时,它会非常有用,因为长的无格式消息使得很难区分哪些行是命令以及哪些是输出。

如何列出所有变量名称及其当前值?

如何列出所有变量名称及其当前值? 不仅包括$HOME , $PWD等,还包括您定义的任何其他内容。