标签: bash

bash:有没有办法通过 CDPATH 使用制表符补全?

看完这篇文章后,我设置了CDPATH=.:~。但是,我没有通过主目录中的目录完成选项卡。我想知道是否有人知道如何做到这一点。

linux bash

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

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
查看次数

LANG=C 位于许多 /etc/init.d/* 脚本中。LANG=C 有什么作用,为什么需要设置 LANG=C。

它不清楚它做什么或它包含什么。我尝试搜索 set 和 env 的输出,以查看系统上其他地方的 C 或 LANG 设置。关于它是如何使用或设置的,尚不清楚。我什至不知道我应该开始阅读哪个手册页。

当我尝试解码不同 Linux 机器上的启动脚本时,这里的任何帮助都会很棒。如果有人可以推荐有助于完成此过程的良好资源(书籍、文档),我们将不胜感激。

在 centos6 机器上使用 LANG=C 的脚本示例

$ grep -i LANG=C ./*
./halt:LANG=C __umount_loop '$2 ~ /^\/$|^\/proc|^\/dev/{next}
./netconsole: route=$(LANG=C ip -o route get to $host/32)
./netconsole: arp=$(LANG=C /sbin/arping -c 1 -I $DEV $target 2>/dev/null | awk '/ 回复来自 .*[.*]/ { print gensub(".*回复来自 .* \\[(.*)\\].*","\\1","G") }')
./netconsole: SYSLOGADDR=$(LANG=C 主机 $SYSLOGADDR 2>/dev/null | awk '/has address / { print $NF }')
./network: LANG=C sed -e "$__sed_discard_ignored_files" \
./network: LANG=C sort -k 1,1 …

linux boot bash environment-variables init

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

如何在没有 .conf 文件的情况下在 Ubuntu 下从命令行连接到 WiFi?

我可以通过执行以下操作从外壳连接到我的 WiFi:

nano wireless-wpa.conf
Run Code Online (Sandbox Code Playgroud)

打字:

ctrl_interface=/var/run/wpa_supplicant

network={
ssid="my_router_id" 
scan_ssid=1
key_mgmt=WPA-PSK
psk="1234567890"
}
Run Code Online (Sandbox Code Playgroud)

并做:

ifconfig eth1 down
iwconfig eth1 mode Managed
ifconfig eth1 up
killall wpa_supplicant
wpa_supplicant -B -Dwext -i eth1 -c ./wireless-wpa.conf -dd
dhclient eth1
Run Code Online (Sandbox Code Playgroud)

相当复杂.. 是否有可能通过 shell 连接到 WiFI 而不需要wireless-wpa.conf

linux wireless-networking bash wpa-supplicant ubuntu

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

什么导致 Windows 上 Bash 中 htop 的 CPU 使用率输出异常

当我htop在 Windows 上的 Bash 中运行时,我得到以下关于 CPU 使用率的输出: 在此处输入图片说明 而 Windows 任务管理器显示大约 1% 的使用率。

这里可以清楚地看出,htop 的红色区域应该表示内核线程的 CPU 使用率,绿色表示正常优先级线程。

对于 Windows 上的 Bash,目前看来绿色是实际的 CPU 使用率,但红色是什么意思?它可能代表了 Windows-Linux 子系统可以使用的最大限制,还是仅仅是一个显示错误,在这种情况下,为什么它会专门显示每个 CPU/超线程的 50% 使用率?

bash windows-10 windows-subsystem-for-linux windows-10-v1607

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

如何将 Windows 路径添加到 Windows Ubuntu 子系统路径

我的 F 驱动器中有一个文件夹,我希望 Windows Ubuntu 子系统上的 bash 指向它。文件夹是

F:\项目\短语

我不确定如何在 Windows bash 中将 Phrasal 目录添加到我的 Shell 路径中。

我的壳牌路径是

乔斯@家:~$

换句话说,我希望短语目录中的所有文件都可以在 HOME 目录中使用或将文件复制到 HOME 目录中

bash windows-subsystem-for-linux

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

如何在makefile中转义“$@”?

test:
    @echo "#!/bin/bash\njava -classpath \"$(CLASSPATH)\" com.atm.ATM \"$@\"" > test
    @chmod a+x test
Run Code Online (Sandbox Code Playgroud)

我试图转义“$@”,以便它在“测试”脚本中以“$@”字面出现(将在 bash 脚本上调用的参数传递给 java 程序)。

我尝试过的事情:

"$$@" -> ""
"$$@@" -> "@"
"$@@" -> "<target>@"
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

bash make makefile escape-characters escaping

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