Mac 终端 /bin/settitle.sh: 没有那个文件或目录

Mac Terminal /bin/settitle.sh: No such file or directory

我正在尝试创建一个 bash 脚本来更改我的终端 windows 的标题,以便我可以识别他们在做什么。我在这上面花了几个小时,但无法弄清楚。这个想法是能够执行settitle NewTitle。谢谢。

这是我的回显:$PATH。看起来 Users/klik/bin 出现了两次。也许这就是问题所在?

~ klik echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/klik/bin:/Users/klik/bin

这是在 textedit 中以纯文本格式创建的脚本。

#!/bin/bash

# settitle: set the Mac Terminal title
# usage:    to set the titlebar to 'PLAY', type:  settitle PLAY

echo -e "3]0;[=13=]7\c"

这是我的 bash_profile 和 bin 文件。

if [ -f ~/.bashrc ]; then
        source ~/.bashrc
fi
export PATH=$PATH:$HOME/bin
alias desk='cd ~/Desktop/'
alias down='cd ~/Downloads/'
alias github='cd ~/github/'

这是我的 ls -a 输出

当前目录

~ 点击 ls -l $HOME/bin | pbcopy

共 8 个 -rwx--x--x@ 1 klik staff 147 Mar 9 21:39 settitle.sh

试试这个:

echo -e "3]0;FreddyFrog[=10=]7\c"

您需要使用-e开启转义字符的解释。您也可以使用 printf.

printf '3]0;%s[=11=]75' "Hippo Croco Horror Pig"

上述问题是文件以 .txt 扩展名保存。我不知道为什么会出现这种情况,因为 ls 命令显示了 .sh 分机。无论如何,这是我用来创建和执行此脚本的过程。

在 Mac 中打开 Finder -> 应用程序 -> TextEdit。 Select 左下角的新文档。 从菜单 select 格式 -> 制作纯文本 粘贴此代码:

#!/bin/sh

# settitle: set the Mac Terminal title
# usage:    to set the titlebar to 'PLAY', type:  settitle PLAY

echo "3]0;[=10=]7\c"

感谢 Alvin Alexander code

仍在 TextEdit select 菜单文件 -> 保存 取消选中 "If no extension is provided, use ".txt" " 当我选择我的文件名时,我保存它时没有扩展名,所以我可以只输入命令 settitle NewTitle 而不必每次都输入扩展名。 请注意保存文件的文件夹。它在我的机器上默认为桌面。

打开 Finder -> 前往 -> 前往文件夹

输入您的 User Bin 文件夹的路径:我的是 /Users/klik/bin 您可以通过 运行 检查是否有 User/bin 文件夹:从您的主目录中执行 ls -l。 如果您在此目录中没有 bin 文件夹,您可以通过转到 $HOME 目录并执行以下命令来创建一个:

mkdir bin

要找出您的主目录,请参阅 this

然后您可以通过执行以下命令打开目录:

open bin

这将在 Finder 中打开文件夹。 将您创建的脚本文件拖到此文件夹中。 通过从文件所在的文件夹执行以下命令或通过在文件名中包含文件路径来确保脚本可执行:

chmod +x <name of file>

通过执行确保脚本在您的可执行文件 $PATH 中:

echo $PATH

你会得到这样的东西:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/<you>/bin

如果您没有看到脚本的路径,即 /Users/''/bin,那么脚本文件不在您的可执行路径中,您需要将它放在您的 .bash_profile 中。执行 ls -l 查看是否有 .bash_profile 文件。

ls -l

如果您没有,请确保您在 $HOME 目录中,然后通过执行以下命令创建一个:

mkdir .bash_profile

在默认编辑器中打开您的 .bash_profile 文件:

open .bash_profile

或使用 nano 打开(保存和关闭 nano 见此 link):

nano .bash_profile

将以下行添加到 .bash_profile 然后 save/close:

export PATH=$PATH:$HOME/bin

通过执行退出终端重置:

exit

打开终端然后输入:

settitle <whateveryouwant>

我希望这可以节省一些时间。感谢 Mark Setchell 的建设性帮助。