标签: shell

Mac OS X:为 Shell 更新 Python

可能的重复:
在 Mac 上使用 Python

所以,我看到了类似的问题,但没有一个答案对我有用。

我将 Python 从 2.6.1 更新到 3.1.3。一切正常,除了:当我输入python终端时,我得到:

Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin 输入
“help”、“copyright”、“credits”或“license”想要查询更多的信息。
>>>

那么,如何更改在 Shell 中运行的 Python 版本?我试过他们提供的脚本。它将他们的目录添加到我的 $PATH,但它仍然不会更改从终端显示的版本。这是我得到的结果echo $PATH

/Library/Frameworks/Python.framework/Versions/3.1/bin:/Library/Frameworks/Python.framework/Versions/3.1/bin:/Library/Frameworks/Python.framework/Versions/3.1/bin:/usr/bin: /bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

每次我运行脚本时,提供的脚本似乎都添加了它们的目录(我自然地尝试了几次)。

以下是它提到的其他相关文件夹中的一些内容:

/Library/Frameworks/Python.framework/Versions/3.1/bin

在此处输入图片说明

/usr/本地/bin

在此处输入图片说明

/usr/bin

在此处输入图片说明

shell python updates macos

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

在linux中以某些字符开头的重新加载历史命令的最快方法是什么?

在Dos中我们可以输入前几个字符来过滤命令历史并快速找到合适的。但是如何在 Linux 中做同样的事情呢?

例如,当我测试本地服务器时:

cd 
sudo /etc/init.d/vsftpd start
wget ...
ls
emacs ...
sudo /etc/init.d/vsftpd restart
sudo /etc/init.d/vsftpd stop
...
Run Code Online (Sandbox Code Playgroud)

在 Dos 中,您可以sudo使用箭头键轻松键入并在以它开头的三个命令之间切换。但是在 Linux 中,下面的命令是我们能做的最好的吗?

historty | grep sudo
Run Code Online (Sandbox Code Playgroud)

我不喜欢它,因为历史很容易变得一团糟,而且还需要鼠标操作。

linux shell

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

用于 Mac OSX 的带有拆分窗格的终端模拟器

我正在 Mac OSX 上寻找具有特定功能的终端模拟器:

能够将控制台窗口拆分为多个窗格。

这是侏儒终结者的一个很棒的功能,我认为这张图片最能描述它:

在此处输入图片说明

请注意,每个窗格都是运行不同应用程序的不同提示。

terminal shell terminator macos

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

不知道为什么这个小shell脚本不起作用

我正在尝试制作一个小脚本来为我正在制作的 python 网站启动 gunicorn。我稍微修改了在https://github.com/benoitc/gunicorn/blob/master/examples/gunicorn_rc 上找到的脚本。这是我的版本。

#!/bin/sh

GUNICORN=/usr/local/bin/gunicorn
ROOT=/srv/mobile-site/app
PID=/var/run/gunicorn.pid

APP=mobilecms:app

if [ -f $PID ]; then rm $PID fi        

cd $ROOT
exec $GUNICORN -b 127.0.0.1:8080 -w 8 -k gevent --pidfile=$PID $APP
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试运行脚本时,它显示此错误

/etc/init.d/gunicorn: 13: Syntax error: end of file unexpected (expecting "fi")
Run Code Online (Sandbox Code Playgroud)

有谁知道出了什么问题?

bash shell ubuntu-10.04

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

有没有办法在 Ubuntu 的文件中插入时间戳?

我经常发现自己需要在文本文件中输入时间戳。有没有办法将当前时间戳快速插入到 Ubuntu 中的文件中?

shell timestamp ubuntu-10.04

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

ssh 登录后如何运行 sudo -s

我的步骤:

  1. 在 myserver.com 上,我将“sudo -s”行粘贴到“mylogin”的主目录中的“~/.bashrc”文件中
  2. SSH 登录到 mylogin@myserver.com
  3. 登录后:

    root@myserver.com:~$

  4. 但是,按 cntrl+D 退出

    root@myserver.com:~$ exit

    root@myserver.com:~$ exit

    ...

    root@myserver.com:~$

    5、不要放弃。

为什么?

请告诉我正确的方法。

sudo bash shell sh

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

尽管杀死了调用它的shell,如何继续运行程序

可能的重复:
在未登录的情况下让 bash 脚本在远程终端上运行?

大家好,我运行一个程序,./a.out 10从 shell 提示说。假设有一个while(1)正在运行的程序内部。现在,如果我尝试关闭 shell,它会警告我它也会杀死我正在运行的程序!那么,如何杀死shell并仍然让我的程序继续在后台运行?

我试过了,exec ./a.out 10但外壳还在那里。另一种选择是简单地双击我的可执行文件,但是我将如何传递命令行参数?

linux shell

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

从“源”脚本更改父脚本的工作目录

我想通过包含的另一个脚本更改我的脚本的工作目录。

第一个脚本:

#!/bin/bash
pwd
source script2
pwd
Run Code Online (Sandbox Code Playgroud)

Sedond脚本:

cd ..
pwd
Run Code Online (Sandbox Code Playgroud)

结果如下:

> ./script1
/home/sebi/testdir1/testdir2  # 1st script
/home/sebi/testdir1           # 2nd script
/home/sebi/testdir1           # 1st script
Run Code Online (Sandbox Code Playgroud)

我在测试这个脚本时编辑了这个问题,它按我想要的方式工作,但是以下脚本的工作方式不同,因为下标完成执行父级与调用下标之前位于同一目录中。

#!/bin/bash
while :
do
sleep 5  

cat /home/.../shelldata.txt >> /home/.../gmodshell #logging

((source /home/..../shelldata.txt) 2>&1) | \
sed -e "s/..shellRunner.sh..line../SH/" > \
/home/..../shellFeedback.txt

echo > /home/..../shelldata.txt

done
Run Code Online (Sandbox Code Playgroud)

整个目标是使用文件访问 bash,这样我就可以将命令写入一个文件,一段时间后我在另一个文件中获得输出。

linux bash shell working-directory

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

Linux shellscript 合并所有文件,无需 for 循环

我在一个目录中有数百个文件,是否有一个简单的命令或命令管道可以用来将它们附加在一起?我不想使用任何循环。

linux shell cat

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

Bash:如何在一行中删除两个文件扩展名?

我如何将这两行合并为一行?

chown abc:abc *.sh

chown abc:abc *.txt
Run Code Online (Sandbox Code Playgroud)

将两个文件扩展名的所有权更改为一个行。

bash shell

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