标签: bash

Ubuntu/ Gnome:在特定工作区中打开应用程序

如何告诉应用程序在特定工作区中打开?


更多信息:

我喜欢将我的 C++ IDE 放在工作区 2 中,将我的 Java IDE 放在工作区 3 中,并将我的电子邮件、浏览器和其他东西放在工作区 4 中。我还使用了一个在登录时执行的 shell 脚本:

#!/bin/bash
gnome-terminal & # WS 1
netbeans-6-9-1 & # WS2
qtcreator-2-0-1 & # WS 3
firefox & # WS 4
thunderbird & # WS 4
Run Code Online (Sandbox Code Playgroud)

当然,目前它都在当前工作区中打开......有没有办法让我指定每个命令应该从哪个工作区开始?

提前致谢!

linux gnome bash workspace ubuntu

10
推荐指数
2
解决办法
2万
查看次数

异步运行 .bashrc 的一部分

我有一些导出和其他需要运行另一个程序的东西(以获取路径或其他任何东西),并且它们需要很长的时间来运行,这意味着我的 bash 启动时间大约为 5 秒。

在我开始添加一些基本缓存之前.bashrc,有没有一种方法可以异步运行一些东西,让我在运行的 shell 中导出变量?

(所以,这真的不仅限于.bashrc,而是一般的 bash。)

performance bash bashrc

10
推荐指数
1
解决办法
1649
查看次数

bashrc:如何知道 X 窗口是否可用?

my 中有一个部分~/.bashrc,它将 $EDITOR 设置为 gvim。当我在 X 窗口时它工作正常。但是,如果我 ssh 到我的工作站(从另一个工作站),gvim 开始抱怨“无法打开显示”。

因此我想if在 bashrc 中声明,如果 X 窗口可用,则使用 gvim,否则就使用 vim。

我怎么能做到这一点?

bash xorg vim gvim bashrc

10
推荐指数
2
解决办法
5942
查看次数

在 bash 中反向历史搜索后跟箭头键会导致光标显示在错误的位置

我注意到很多次当我通过CTRL+从命令行反向搜索历史时r,如果我想编辑命令,有时当我按下箭头键或输入CTRL+aCTRL+时,光标会跳到错误的位置e. 它跳转到的特定位置似乎是一个偏移量,等于我在PS1.

这会造成困难,因为光标的实际位置与屏幕上呈现的不同;对命令的未来编辑呈现为就好像光标位于它跳转到的位置一样,但实际命令保留了正确的位置而没有任何跳转。

有谁知道是什么导致了这个或如何解决它?

编辑:如果我PS1在问题末尾添加换行符似乎会消失。但是,我更愿意在与提示相同的行中输入命令。

bash

10
推荐指数
2
解决办法
1869
查看次数

如何让与 Homebrew 一起安装的 Fish shell 和 NVM 一起工作?

我正在尝试尽可能多地使用 Homebrew 管理我的 OSX 包。我已经使用 Homebrew 安装了 Fish Shell 和 NVM,但无法让 Fish 识别我的 NVM 安装。使用 Bash 运行时,NVM 命令运行良好,可能是因为当您使用 Homebrew 安装 NVM 时,它让我在我的 .bashrc 文件中添加了一些额外的行。

使用 Homebrew 安装 NVM 后,它说:

Add NVM's working directory to your $HOME path (if it doesn't exist):

mkdir ~/.nvm

Add the following to $HOME/.bashrc, $HOME/.zshrc, or your shell's
equivalent configuration file:

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
Run Code Online (Sandbox Code Playgroud)

此外,Homebrew 安装脚本似乎已将此行添加到我的 ~/.profile

source /usr/local/opt/nvm/nvm.sh
Run Code Online (Sandbox Code Playgroud)

我希望可以对 Fish 使用相同的技术来访问 NVM 安装,但我似乎无法让它工作。

我发现了这种技术:https : //github.com/passcod/nvm-fish-wrapper 但我宁愿不必包装 NVM。

任何人都可以帮忙吗?

bash homebrew fish node.js macos

10
推荐指数
2
解决办法
7461
查看次数

为什么我的脚本在控制台输出中省略了前导空格?

我有以下脚本:

#!/bin/bash
function consoleWriteLine() {
  echo $* >&2
}

consoleWriteLine "    indented by 4 spaces"
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我得到以下输出:

$ ./test.sh
indented by 4 spaces
Run Code Online (Sandbox Code Playgroud)

我的4个空间去哪儿了?我如何让他们回来?

bash

10
推荐指数
1
解决办法
643
查看次数

为什么 SSH 不调用 .bash_profile?

我的理解是它.bash_profile总是通过 SSH 登录来调用。

但是,除非执行以下操作,否则我看不到启用的各种设置:

ssh $host "source ~/.bash_profile ; echo $PATH "

.:/mnt/spark-1.4.1/bin:/mnt/spark-1.4.1/sbin:/mnt/scala-2.11.2/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Run Code Online (Sandbox Code Playgroud)

当我简单地这样做时:

ssh $host "echo $PATH "
Run Code Online (Sandbox Code Playgroud)

PATH 信息只是默认的

 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Run Code Online (Sandbox Code Playgroud)

用户是 root,默认 shell 是 bash。

$ ll /bin/sh
lrwxrwxrwx 1 root root 4 Aug  6 19:54 /bin/sh -> bash
Run Code Online (Sandbox Code Playgroud)

更新root 的 shellbash

grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
Run Code Online (Sandbox Code Playgroud)

ssh bash

10
推荐指数
2
解决办法
2万
查看次数

WSL(ubuntu/windows) AppData\Local\Lxss 实际上并没有同步回 ubuntu,想法?

如果您在 bash (touch /root/foo.txt) 中创建一个文件,该文件在AppData\Local\Lxss\ 修改它时出现在隐藏目录中,则不会在 bash 中更改它。更糟糕的是,如果您在 bash 中再次更改它,您通过资源管理器更改的文件会被破坏!

有没有真正的挂载点C:\

真图藏在哪里??(就像文件系统在现实中写回图像文件一样?)

0:14:29 在这个https://channel9.msdn.com/Events/Build/2016/C906似乎声称您将拥有资源管理器的完全访问权限。0:16:30 他们向你展示,AppData\Local\Lxss\ 但不要一次提到你的文件不会像我描述的那样同步。

bash ubuntu-14.04 windows-10 windows-insider windows-subsystem-for-linux

10
推荐指数
1
解决办法
8470
查看次数

Bash 中 [[ ]] AND [ ] 或 (( )) AND ( ) 之间的区别

[[ condition ]]使用and[ condition ](( condition ))and有什么区别( condition )?在什么场景下我们需要使用这两者?

  • (( 10 > 9 ))有效但(( 10 -gt 9 ))无效
  • [[ 10 -gt 9 ]]有效但[[ 10 > 9 ]]无效

linux bash shell-script

10
推荐指数
2
解决办法
2万
查看次数

shred 命令后恢复文件

假设我的计算机中有一些敏感文件,我想完全删除它们,这样就没有人可以检索它们。为此,我可以使用该rm命令,但它仍然很容易恢复。所以我选择使用shred用噪音覆盖我的文件然后删除它的命令。

> shred -n 120 -u my_file.txt
Run Code Online (Sandbox Code Playgroud)

但是,我仍然不确定我的方法是否完全安全。
粉碎文件后可以做什么来恢复它?

先决条件

假设我可以使用所有可用的取证软件和实验室设备来恢复我的数据。
假设我想保持硬盘驱动器的物理完整性(因此没有微波炉、火灾或任何物理损坏)。

研究

我也尝试过:

dd if=/dev/zero of=my_file.txt bs=16M status=progress
Run Code Online (Sandbox Code Playgroud)

为了将我的文件内容替换为0。但我不知道这个方法是否比shred.

bash rm forensics shred

10
推荐指数
2
解决办法
3785
查看次数