标签: bash

在 bash 中逐字移动

在bash中,你可以移动到与行的开头CTRL+ A,并与终端CTRL+ E。我如何通过单词向前和向后移动?

bash navigation

12
推荐指数
3
解决办法
6129
查看次数

过滤顶部命令输出

我正在运行 Mac 并希望过滤top特定进程的命令输出,以便仅显示 PID、COMMAND 和 %CPU 列。

获得进程的PID后,我运行:

top -pid 1234
Run Code Online (Sandbox Code Playgroud)

但是,这会为该过程显示超过 15 列。我可以将“命令”的输出通过管道传输到 awk 并仅显示:

PID COMMAND %CPU
Run Code Online (Sandbox Code Playgroud)

列?

我不想将输出存储在文本文件中然后对其进行处理。我对实时监控流程很感兴趣。

bash awk command-line top macos

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

使用 Mac 终端连接到 WiFi 网络

每次我尝试找出如何执行此操作时,我都会找出如何在 linux 上执行此操作,但它不会传输。如何使用 Mac Terminal Bash 连接到 WiFi 网络?

mac unix terminal wireless-networking bash

12
推荐指数
1
解决办法
3万
查看次数

运行带有 html 按钮的 shell 脚本

我想在网站上按下按钮时启动 bash 脚本。这是我的第一次尝试:

<button type="button" onclick="/path/to/name.sh">Click Me!</button>
Run Code Online (Sandbox Code Playgroud)

但没有运气。有什么建议?

编辑 -遵循 slhclk 和 mit 的建议:

我在 /var/www 中有一个 php 文件,我将其指向我的网络浏览器。文件内容如下:

<?php
exec("/home/aa/scripts/test.sh");
?>
Run Code Online (Sandbox Code Playgroud)

tesh.sh 包含以下内容:

screen -S server1 -X quit
Run Code Online (Sandbox Code Playgroud)

如果我输入/home/aa/scripts/test.shshell,脚本就可以执行。但是,当我将网络浏览器指向http://example.com/screen.php(其中包含上面的代码)时,我看到一个空白页面并且脚本没有执行。两者都有执行权限。为什么不起作用?

html bash shell

12
推荐指数
1
解决办法
15万
查看次数

大括号扩展:运行多个命令而不是在一行上扩展?

当您在 bash 中使用大括号扩展时,类似

echo {a,b,c}
Run Code Online (Sandbox Code Playgroud)

变成

echo a b c
Run Code Online (Sandbox Code Playgroud)

有没有办法将其扩展为 3 个单独的命令,每个扩展一个?

以便:

echo {a,b,c}
Run Code Online (Sandbox Code Playgroud)

会成为

echo a
echo b
echo c
Run Code Online (Sandbox Code Playgroud)

linux bash expansion

12
推荐指数
1
解决办法
3360
查看次数

术语“Shell”和“Bash”之间有什么区别?

“Shell”和“Bash”有什么区别,这些术语是什么意思?

据我所知,没有区别。但是我看过很多关于“Shell”的书和其他关于“Bash”的书!

因此,如果我想在 Mac OS X 上使用终端并编写一些 bash 脚本,我想知道我应该阅读哪种类型的书。

bash shell macos

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

如何在cat命令中设置最大行

在grep命令中,我可以使用参数-m设置最大行输出。如何在 cat 命令中指定最大行?

bash

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

如何让 zsh 正确显示国际字符?

我刚开始使用 zsh,并且喜欢它。但是,当涉及到国际角色时,我偶然发现了一个烦恼:

?  ~  touch åäö.txt               
?  ~  ls                          
Desktop       Dropbox       Music         Sites
Documents     Library       Pictures      a??a??o??.txt
Downloads     Movies        Public
?  ~  rm -v a<030a>a<0308>o<0308>.txt
åäö.txt
?  ~  
Run Code Online (Sandbox Code Playgroud)

使用 bash,它看起来像这样(在两种情况下,文件名rm -v都是通过按自动完成的TAB)。

johan@retina ~ $ touch åäö.txt
johan@retina ~ $ ls
Desktop       Dropbox       Music         Sites
Documents     Library       Pictures      åäö.txt
Downloads     Movies        Public
johan@retina ~ $ rm -v åäö.txt 
åäö.txt
johan@retina ~ $ 
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题zsh

编辑:

设置export LANG=en_US:UTF-8修复了 eg 的输出,ls并在TAB完成时有多个匹配项时在当前输入下方的行上正确显示它。但是,从TAB …

bash zsh international utf-8 macos

12
推荐指数
1
解决办法
1万
查看次数

在 bash 中运行可执行脚本时,有什么方法可以避免点斜线?

假设我有一个脚本。

chmod +x myscript
Run Code Online (Sandbox Code Playgroud)

现在运行这个我去

./myscript
Run Code Online (Sandbox Code Playgroud)

但是有什么办法可以通过输入来运行它

myscript
Run Code Online (Sandbox Code Playgroud)

???

linux mac terminal bash

12
推荐指数
2
解决办法
9896
查看次数

如何在“systemd”服务文件中获取机器 IP 地址

我需要获取机器的 IP 并在我的服务中使用它:

[Unit]
Description=Redmine server
After=syslog.target
After=network.target

[Service]
Type=simple
User=redmine
Group=redmine
ip="$(/sbin/ip -o -4 addr list eno16777736 | awk '{print $4}' | cut -d/ -f1)"
ExecStart=/usr/bin/ruby /home/redmine/redmine/bin/rails server webrick -e production -b $ip -p 3000

# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

如何在systemd服务文件中执行此命令并获取其结果:

ip=$(/sbin/ip -o -4 addr list eno16777736 | awk '{print $4}' | cut -d/ -f1)
Run Code Online (Sandbox Code Playgroud)

为了使用它的结果 infor xxx.xxx.xxx.xxx,像这样:

ExecStart=/usr/bin/ruby /home/redmine/redmine/bin/rails server webrick -e production …
Run Code Online (Sandbox Code Playgroud)

bash systemd centos-7

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